OSDN Git Service

ART: Fix mac build
authorAndreas Gampe <agampe@google.com>
Wed, 15 Jul 2015 00:57:43 +0000 (17:57 -0700)
committerAndreas Gampe <agampe@google.com>
Wed, 15 Jul 2015 01:13:23 +0000 (18:13 -0700)
Fix Clang assembler bugs introduced in commit
3031c8da0c5009183f770b005c245f9bf2a4d01b.

Change-Id: I460c7c1b8f4380244925d248b90c88239540527a

runtime/arch/x86/quick_entrypoints_x86.S
runtime/arch/x86_64/quick_entrypoints_x86_64.S

index bde6a08..7086b5b 100644 (file)
@@ -303,7 +303,7 @@ MACRO1(INVOKE_TRAMPOLINE_BODY, cxx_name)
     CFI_ADJUST_CFA_OFFSET(4)
     PUSH ecx                      // pass arg2
     PUSH eax                      // pass arg1
-    call VAR(cxx_name, 1)         // cxx_name(arg1, arg2, arg3, Thread*, SP)
+    call VAR(cxx_name, 0)         // cxx_name(arg1, arg2, arg3, Thread*, SP)
     movl %edx, %edi               // save code pointer in EDI
     addl MACRO_LITERAL(20), %esp  // Pop arguments skip eax
     CFI_ADJUST_CFA_OFFSET(-20)
@@ -336,7 +336,7 @@ MACRO1(INVOKE_TRAMPOLINE_BODY, cxx_name)
 END_MACRO
 MACRO2(INVOKE_TRAMPOLINE, c_name, cxx_name)
     DEFINE_FUNCTION RAW_VAR(c_name, 0)
-    INVOKE_TRAMPOLINE_BODY(cxx_name)
+    INVOKE_TRAMPOLINE_BODY RAW_VAR(cxx_name, 1)
     END_FUNCTION RAW_VAR(c_name, 0)
 END_MACRO
 
@@ -1417,7 +1417,7 @@ END_FUNCTION art_quick_proxy_invoke_handler
      */
 DEFINE_FUNCTION art_quick_imt_conflict_trampoline
     movd %xmm7, %eax              // get target method index stored in xmm7
-    INVOKE_TRAMPOLINE_BODY(artInvokeInterfaceTrampoline)
+    INVOKE_TRAMPOLINE_BODY artInvokeInterfaceTrampoline
 END_FUNCTION art_quick_imt_conflict_trampoline
 
 DEFINE_FUNCTION art_quick_resolution_trampoline
index a69a4b2..ad89bca 100644 (file)
@@ -361,7 +361,7 @@ MACRO1(INVOKE_TRAMPOLINE_BODY, cxx_name)
     movq %gs:THREAD_SELF_OFFSET, %rdx                      // pass Thread
     movq %rsp, %rcx                                        // pass SP
 
-    call VAR(cxx_name, 1)                   // cxx_name(arg1, arg2, Thread*, SP)
+    call VAR(cxx_name, 0)                   // cxx_name(arg1, arg2, Thread*, SP)
                                                            // save the code pointer
     movq %rax, %rdi
     movq %rdx, %rax
@@ -376,9 +376,9 @@ MACRO1(INVOKE_TRAMPOLINE_BODY, cxx_name)
     DELIVER_PENDING_EXCEPTION
 END_MACRO
 MACRO2(INVOKE_TRAMPOLINE, c_name, cxx_name)
-    DEFINE_FUNCTION VAR(c_name, 0)
-    INVOKE_TRAMPOLINE_BODY(cxx_name)
-    END_FUNCTION VAR(c_name, 0)
+    DEFINE_FUNCTION RAW_VAR(c_name, 0)
+    INVOKE_TRAMPOLINE_BODY RAW_VAR(cxx_name, 1)
+    END_FUNCTION RAW_VAR(c_name, 0)
 END_MACRO
 
 INVOKE_TRAMPOLINE art_quick_invoke_interface_trampoline_with_access_check, artInvokeInterfaceTrampolineWithAccessCheck
@@ -1354,7 +1354,7 @@ DEFINE_FUNCTION art_quick_imt_conflict_trampoline
     int3
 #else
     movq %rax, %rdi
-    INVOKE_TRAMPOLINE_BODY(artInvokeInterfaceTrampoline)
+    INVOKE_TRAMPOLINE_BODY artInvokeInterfaceTrampoline
 #endif  // __APPLE__
 END_FUNCTION art_quick_imt_conflict_trampoline