From 0bbd21790208f97e2ce112a0ab42187de61f3033 Mon Sep 17 00:00:00 2001 From: iains Date: Tue, 22 Nov 2011 09:57:19 +0000 Subject: libitm: * config/x86/sjlj.S (CONCAT1, CONCAT2, SYM): Respond to __USER_LABEL_PREFIX__ for targets that use it. TYPE, SIZE, HIDDEN): New macros to assist on non-elf targets. (_ITM_beginTransaction): Use SYM, TYPE, SIZE macros to assist in portability to non-elf targets. (GTM_longjmp): LIkewise. * libitm_i.h (begin_transaction): Apply __USER_LABEL_PREFIX__ where required. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181612 138bc75d-0d04-0410-961f-82ee72b054a4 --- libitm/libitm_i.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libitm/libitm_i.h') diff --git a/libitm/libitm_i.h b/libitm/libitm_i.h index 58e43b01281..ba1afb4710c 100644 --- a/libitm/libitm_i.h +++ b/libitm/libitm_i.h @@ -240,9 +240,15 @@ struct gtm_thread // Invoked from assembly language, thus the "asm" specifier on // the name, avoiding complex name mangling. +#ifdef __USER_LABEL_PREFIX__ +#define UPFX1(t) UPFX(t) +#define UPFX(t) #t + static uint32_t begin_transaction(uint32_t, const gtm_jmpbuf *) + __asm__(UPFX1(__USER_LABEL_PREFIX__) "GTM_begin_transaction") ITM_REGPARM; +#else static uint32_t begin_transaction(uint32_t, const gtm_jmpbuf *) __asm__("GTM_begin_transaction") ITM_REGPARM; - +#endif // In eh_cpp.cc void revert_cpp_exceptions (gtm_transaction_cp *cp = 0); -- cgit v1.2.1