summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-04-25 20:47:14 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-04-25 20:47:14 +0000
commitbb43b2102cf1f3a753448e684a5540654382e69c (patch)
tree354467c7fd6cea5f777b3da210b0009235373c20 /runtime
parente8256e7773a230337c3d137cbf0365f737820405 (diff)
parent861ea56e20d60f28e21d47f331c29b2e303e2dbe (diff)
downloadart-bb43b2102cf1f3a753448e684a5540654382e69c.zip
art-bb43b2102cf1f3a753448e684a5540654382e69c.tar.gz
art-bb43b2102cf1f3a753448e684a5540654382e69c.tar.bz2
Merge "Fix ART compilation for Clang 3.5."
Diffstat (limited to 'runtime')
-rw-r--r--runtime/arch/x86/asm_support_x86.S4
-rw-r--r--runtime/interpreter/interpreter.cc8
2 files changed, 6 insertions, 6 deletions
diff --git a/runtime/arch/x86/asm_support_x86.S b/runtime/arch/x86/asm_support_x86.S
index e329530..642d9a3 100644
--- a/runtime/arch/x86/asm_support_x86.S
+++ b/runtime/arch/x86/asm_support_x86.S
@@ -19,8 +19,8 @@
#include "asm_support_x86.h"
-#if defined(__clang__)
- // Clang's as(1) doesn't let you name macro parameters.
+#if defined(__clang__) && (__clang_major__ < 4) && (__clang_minor__ < 5)
+ // Clang's as(1) doesn't let you name macro parameters prior to 3.5.
#define MACRO0(macro_name) .macro macro_name
#define MACRO1(macro_name, macro_arg1) .macro macro_name
#define MACRO2(macro_name, macro_arg1, macro_args2) .macro macro_name
diff --git a/runtime/interpreter/interpreter.cc b/runtime/interpreter/interpreter.cc
index 1bf0078..e3f3cd0 100644
--- a/runtime/interpreter/interpreter.cc
+++ b/runtime/interpreter/interpreter.cc
@@ -302,19 +302,19 @@ JValue ExecuteGotoImpl(Thread* self, MethodHelper& mh, const DexFile::CodeItem*
exit(0);
}
// Explicit definitions of ExecuteGotoImpl.
-template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+template<> SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
JValue ExecuteGotoImpl<true, false>(Thread* self, MethodHelper& mh,
const DexFile::CodeItem* code_item,
ShadowFrame& shadow_frame, JValue result_register);
-template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+template<> SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
JValue ExecuteGotoImpl<false, false>(Thread* self, MethodHelper& mh,
const DexFile::CodeItem* code_item,
ShadowFrame& shadow_frame, JValue result_register);
-template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+template<> SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
JValue ExecuteGotoImpl<true, true>(Thread* self, MethodHelper& mh,
const DexFile::CodeItem* code_item,
ShadowFrame& shadow_frame, JValue result_register);
-template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+template<> SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
JValue ExecuteGotoImpl<false, true>(Thread* self, MethodHelper& mh,
const DexFile::CodeItem* code_item,
ShadowFrame& shadow_frame, JValue result_register);