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