@@ -65,6 +65,7 @@ class _Target(typing.Generic[_S, _R]):
6565 condition : str
6666 _ : dataclasses .KW_ONLY
6767 args : typing .Sequence [str ] = ()
68+ stencil_args : typing .Sequence [str ] = ()
6869 optimizer : type [_optimizers .Optimizer ] = _optimizers .Optimizer
6970 label_prefix : typing .ClassVar [str ]
7071 symbol_prefix : typing .ClassVar [str ]
@@ -250,6 +251,7 @@ async def _build_stencil_group(
250251 if self .frame_pointers :
251252 args_s += ["-Xclang" , "-mframe-pointer=reserved" ]
252253 args_s += self ._compile_args ()
254+ args_s += self .stencil_args
253255 # Allow user-provided CFLAGS to override any defaults
254256 args_s += shlex .split (self .cflags )
255257 await _llvm .run (
@@ -720,7 +722,12 @@ def get_target(host: str) -> _COFF32 | _COFF64 | _ELF | _MachO:
720722 host = "aarch64-apple-darwin"
721723 condition = "defined(__aarch64__) && defined(__APPLE__)"
722724 optimizer = _optimizers .OptimizerAArch64
723- target = _MachO (host , condition , optimizer = optimizer )
725+ target = _MachO (
726+ host ,
727+ condition ,
728+ optimizer = optimizer ,
729+ stencil_args = ["-mllvm" , "-aarch64-enable-collect-loh=false" ],
730+ )
724731 elif re .fullmatch (r"aarch64-pc-windows-msvc" , host ):
725732 host = "aarch64-pc-windows-msvc"
726733 condition = "defined(_M_ARM64)"
0 commit comments