| Index: runtime/vm/assembler_arm.h
|
| ===================================================================
|
| --- runtime/vm/assembler_arm.h (revision 19404)
|
| +++ runtime/vm/assembler_arm.h (working copy)
|
| @@ -12,6 +12,7 @@
|
| #include "platform/assert.h"
|
| #include "platform/utils.h"
|
| #include "vm/constants_arm.h"
|
| +#include "vm/simulator.h"
|
|
|
| namespace dart {
|
|
|
| @@ -61,11 +62,20 @@
|
|
|
| class CPUFeatures : public AllStatic {
|
| public:
|
| - static void InitOnce() { }
|
| + static void InitOnce();
|
| static bool double_truncate_round_supported() {
|
| UNIMPLEMENTED();
|
| return false;
|
| }
|
| + static bool integer_division_supported();
|
| +#if defined(USING_SIMULATOR)
|
| + static void set_integer_division_supported(bool supported);
|
| +#endif
|
| + private:
|
| + static bool integer_division_supported_;
|
| +#if defined(DEBUG)
|
| + static bool initialized_;
|
| +#endif
|
| };
|
|
|
|
|
| @@ -488,6 +498,10 @@
|
| void bx(Register rm, Condition cond = AL);
|
| void blx(Register rm, Condition cond = AL);
|
|
|
| + // Move to ARM core register from Coprocessor.
|
| + void mrc(Register rd, int32_t coproc, int32_t opc1,
|
| + int32_t crn, int32_t crm, int32_t opc2, Condition cond = AL);
|
| +
|
| // Macros.
|
| // Branch to an entry address. Call sequence is never patched.
|
| void Branch(const ExternalLabel* label, Condition cond = AL);
|
|
|