forked from OSchip/llvm-project
[Compiler-rt][AArch64] Workaround for .cfi_startproc assembler parser bug.
Put .cfi_startproc on a new line to avoid hitting the assembly parser bug in MasmParser::parseDirectiveCFIStartProc(). Reviewed By: tambre Differential Revision: https://reviews.llvm.org/D93236
This commit is contained in:
parent
dc82890a77
commit
3000c19df6
|
@ -113,7 +113,8 @@ HIDDEN(__aarch64_have_lse_atomics)
|
|||
.endm
|
||||
|
||||
#ifdef L_cas
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(cas))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_START(NAME(cas))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_END(NAME(cas))
|
||||
JUMP_IF_NOT_LSE 8f
|
||||
#if SIZE < 16
|
||||
#ifdef HAS_ASM_LSE
|
||||
|
@ -166,7 +167,8 @@ END_COMPILERRT_OUTLINE_FUNCTION(NAME(cas))
|
|||
#else
|
||||
#define SWP .inst 0x38208020 + B + N
|
||||
#endif
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(swp))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_START(NAME(swp))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_END(NAME(swp))
|
||||
JUMP_IF_NOT_LSE 8f
|
||||
SWP // s(0), s(0), [x1]
|
||||
ret
|
||||
|
@ -209,7 +211,8 @@ END_COMPILERRT_OUTLINE_FUNCTION(NAME(swp))
|
|||
#define LDOP .inst 0x38200020 + OPN + B + N
|
||||
#endif
|
||||
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(LDNM))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_START(NAME(LDNM))
|
||||
DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_END(NAME(LDNM))
|
||||
JUMP_IF_NOT_LSE 8f
|
||||
LDOP // s(0), s(0), [x1]
|
||||
ret
|
||||
|
|
|
@ -243,12 +243,16 @@
|
|||
DECLARE_FUNC_ENCODING \
|
||||
name:
|
||||
|
||||
#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(name) \
|
||||
// TODO(ilinpv) START & END parts will be merged when assembly parser bug
|
||||
// (kristina) in MasmParser::parseDirectiveCFIStartProc() is fixed.
|
||||
#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_START(name) \
|
||||
DEFINE_CODE_STATE \
|
||||
FUNC_ALIGN \
|
||||
.globl name SEPARATOR \
|
||||
SYMBOL_IS_FUNC(name) SEPARATOR \
|
||||
DECLARE_SYMBOL_VISIBILITY(name) SEPARATOR \
|
||||
DECLARE_SYMBOL_VISIBILITY(name)
|
||||
|
||||
#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED_END(name) \
|
||||
CFI_START SEPARATOR \
|
||||
DECLARE_FUNC_ENCODING \
|
||||
name: SEPARATOR BTI_C
|
||||
|
|
Loading…
Reference in New Issue