Index: src/ppc/simulator-ppc.cc |
diff --git a/src/ppc/simulator-ppc.cc b/src/ppc/simulator-ppc.cc |
index 2707343ed5a8fee78551457ddad62be71201dddf..2062bd26af8071bad6d1a3f22b3b37f1b7e5adcc 100644 |
--- a/src/ppc/simulator-ppc.cc |
+++ b/src/ppc/simulator-ppc.cc |
@@ -2707,6 +2707,15 @@ void Simulator::ExecuteExt3(Instruction* instr) { |
set_d_register_from_double(frt, frt_val); |
return; |
} |
+ case FCFIDU: { |
+ // fcfidus |
+ int frt = instr->RTValue(); |
+ int frb = instr->RBValue(); |
+ uint64_t frb_val = get_d_register(frb); |
+ double frt_val = static_cast<float>(frb_val); |
+ set_d_register_from_double(frt, frt_val); |
+ return; |
+ } |
} |
UNIMPLEMENTED(); // Not used by V8. |
} |