[compiler-rt] [compiler-rt] Add CMake option to enable execute-only code generation on AArch64 (PR #140555)
via llvm-commits
llvm-commits at lists.llvm.org
Mon May 19 08:01:53 PDT 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions h -- compiler-rt/lib/builtins/assembly.h
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/compiler-rt/lib/builtins/assembly.h b/compiler-rt/lib/builtins/assembly.h
index 2e4195d0b..59abc80aa 100644
--- a/compiler-rt/lib/builtins/assembly.h
+++ b/compiler-rt/lib/builtins/assembly.h
@@ -73,16 +73,13 @@
#if defined(__aarch64__) && defined(__ELF__) && \
defined(COMPILER_RT_EXECUTE_ONLY_CODE)
-#define TEXT_SECTION \
- .section .text,"axy", at progbits,unique,0
+#define TEXT_SECTION .section.text, "axy", @progbits, unique, 0
#else
-#define TEXT_SECTION \
- .text
+#define TEXT_SECTION .text
#endif
#if defined(__arm__) || defined(__aarch64__) || defined(__arm64ec__)
-#define FUNC_ALIGN \
- .balign 16 SEPARATOR
+#define FUNC_ALIGN .balign 16 SEPARATOR
#else
#define FUNC_ALIGN
#endif
@@ -238,55 +235,45 @@
#endif
#define DEFINE_COMPILERRT_FUNCTION(name) \
- TEXT_SECTION SEPARATOR \
- DEFINE_CODE_STATE \
- FILE_LEVEL_DIRECTIVE SEPARATOR \
- .globl FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
- DECLARE_SYMBOL_VISIBILITY(name) \
+ TEXT_SECTION SEPARATOR DEFINE_CODE_STATE FILE_LEVEL_DIRECTIVE \
+ SEPARATOR.globl \
+ FUNC_SYMBOL(SYMBOL_NAME(name)) \
+ SEPARATOR SYMBOL_IS_FUNC(SYMBOL_NAME(name)) \
+ SEPARATOR DECLARE_SYMBOL_VISIBILITY(name) \
DECLARE_FUNC_ENCODING \
- FUNC_SYMBOL(SYMBOL_NAME(name)):
+ FUNC_SYMBOL(SYMBOL_NAME(name)) :
#define DEFINE_COMPILERRT_THUMB_FUNCTION(name) \
- TEXT_SECTION SEPARATOR \
- DEFINE_CODE_STATE \
- FILE_LEVEL_DIRECTIVE SEPARATOR \
- .globl FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
- DECLARE_SYMBOL_VISIBILITY(name) SEPARATOR \
- .thumb_func SEPARATOR \
- FUNC_SYMBOL(SYMBOL_NAME(name)):
+ TEXT_SECTION SEPARATOR DEFINE_CODE_STATE FILE_LEVEL_DIRECTIVE SEPARATOR \
+ .globl \
+ FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR SYMBOL_IS_FUNC( \
+ SYMBOL_NAME(name)) SEPARATOR DECLARE_SYMBOL_VISIBILITY(name) \
+ SEPARATOR.thumb_func SEPARATOR FUNC_SYMBOL(SYMBOL_NAME(name)) \
+ :
#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
- TEXT_SECTION SEPARATOR \
- DEFINE_CODE_STATE \
- FILE_LEVEL_DIRECTIVE SEPARATOR \
- .globl FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
- HIDDEN(SYMBOL_NAME(name)) SEPARATOR \
- DECLARE_FUNC_ENCODING \
- FUNC_SYMBOL(SYMBOL_NAME(name)):
+ TEXT_SECTION SEPARATOR DEFINE_CODE_STATE FILE_LEVEL_DIRECTIVE \
+ SEPARATOR.globl \
+ FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR SYMBOL_IS_FUNC( \
+ SYMBOL_NAME(name)) SEPARATOR HIDDEN(SYMBOL_NAME(name)) \
+ SEPARATOR DECLARE_FUNC_ENCODING FUNC_SYMBOL(SYMBOL_NAME(name)) \
+ :
#define DEFINE_COMPILERRT_PRIVATE_FUNCTION_UNMANGLED(name) \
- TEXT_SECTION SEPARATOR \
- DEFINE_CODE_STATE \
- .globl FUNC_SYMBOL(name) SEPARATOR \
- SYMBOL_IS_FUNC(name) SEPARATOR \
- HIDDEN(name) SEPARATOR \
+ TEXT_SECTION SEPARATOR DEFINE_CODE_STATE.globl FUNC_SYMBOL(name) \
+ SEPARATOR \
+ SYMBOL_IS_FUNC(name) SEPARATOR HIDDEN(name) \
+ SEPARATOR \
DECLARE_FUNC_ENCODING \
- FUNC_SYMBOL(name):
+ FUNC_SYMBOL(name) :
#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(name) \
- TEXT_SECTION SEPARATOR \
- DEFINE_CODE_STATE \
- FUNC_ALIGN \
- .globl FUNC_SYMBOL(name) SEPARATOR \
- SYMBOL_IS_FUNC(name) SEPARATOR \
- DECLARE_SYMBOL_VISIBILITY_UNMANGLED(FUNC_SYMBOL(name)) SEPARATOR \
- DECLARE_FUNC_ENCODING \
- FUNC_SYMBOL(name): \
- SEPARATOR CFI_START \
- SEPARATOR BTI_C
+ TEXT_SECTION SEPARATOR DEFINE_CODE_STATE FUNC_ALIGN.globl FUNC_SYMBOL(name) \
+ SEPARATOR \
+ SYMBOL_IS_FUNC(name) \
+ SEPARATOR DECLARE_SYMBOL_VISIBILITY_UNMANGLED(FUNC_SYMBOL(name)) \
+ SEPARATOR DECLARE_FUNC_ENCODING FUNC_SYMBOL(name) \
+ : SEPARATOR CFI_START SEPARATOR BTI_C
#define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \
.globl FUNC_SYMBOL(SYMBOL_NAME(name)) SEPARATOR \
``````````
</details>
https://github.com/llvm/llvm-project/pull/140555
More information about the llvm-commits
mailing list