nikic wrote:

@rjmccall From a Clang perspective, largely no -- but not entirely. There are 
cases when LLVM materializes allocations based on the data layout in ways that 
are observable and not controllable by Clang. One of these is certain inline 
asm constraints (which can end up passing constant pool addresses that don't 
satisfy alignment requirements) and another is certain edge cases around 
libcall lowering (libcalls that result in sret demotion, which is why clang 
used to miscompile f128 libcalls).

>From an LLVM perspective, we do care because non-Clang frontends use LLVM's 
>data layout as their source of truth. For most targets, the information there 
>is sufficient -- as long as it's actually correct. It seems that sometimes 
>Clang developers also expect that the data layout is the source of truth, 
>which is how we end up with situations like m68k forgetting to specify 
>Clang-side alignments entirely 
>(https://github.com/llvm/llvm-project/pull/144740).

https://github.com/llvm/llvm-project/pull/144720
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to