Index: runtime/vm/intermediate_language_arm64.cc |
diff --git a/runtime/vm/intermediate_language_arm64.cc b/runtime/vm/intermediate_language_arm64.cc |
index 9587767ac1070d8973a83f837954bd40efd9113a..10bd177a37b59158c01821b7f86ae6a299d61a32 100644 |
--- a/runtime/vm/intermediate_language_arm64.cc |
+++ b/runtime/vm/intermediate_language_arm64.cc |
@@ -814,7 +814,8 @@ void NativeCallInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
} |
#endif |
} |
- __ LoadImmediate(R5, entry); |
+ ExternalLabel label(entry); |
+ __ LoadExternalLabel(R5, &label); |
__ LoadImmediate(R1, argc_tag); |
compiler->GenerateCall(token_pos(), |
*stub_entry, |
@@ -839,8 +840,9 @@ void StringFromCharCodeInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
ASSERT(compiler->is_optimizing()); |
const Register char_code = locs()->in(0).reg(); |
const Register result = locs()->out(0).reg(); |
- __ LoadImmediate( |
- result, reinterpret_cast<uword>(Symbols::PredefinedAddress())); |
+ |
+ ExternalLabel label(reinterpret_cast<uword>(Symbols::PredefinedAddress())); |
+ __ LoadExternalLabel(result, &label); |
__ AddImmediate( |
result, result, Symbols::kNullCharCodeSymbolOffset * kWordSize); |
__ SmiUntag(TMP, char_code); // Untag to use scaled adress mode. |