New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[upstream llvm] removal of CodeGenOptions::StackAlignmentOverride #345
Comments
Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048
Relands commit 433c8d9 with fixes for MIPS. Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048
Thanks for the heads up! Any idea if this will make it into a 12.X release? If not I will move it to the LLVM 13 milestone, but if it's going to be present in LLVM 12.0.0 but absent in LLVM 12.0.1 (or similar modulo bumps to the least significant version digit) then we will probably need to take a little more care in handling it. |
It will not; the release/12.x branch exists (but I don't think release/13.x does yet, it will be branched from main soon) but the release manager is trying to cut the final 12.0.1 release soon. I don't plan to cherry pick it back, or request that be done. |
That's good news, it means we don't have to think about releasing a second 12.X version of llvm-hs. I'll assign this to the LLVM 13 milestone. |
Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048
Relands commit 433c8d9 with fixes for MIPS. Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048
Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048 llvm-monorepo: 433c8d950cb3a1fa0977355ce0367e8c763a3f13
Relands commit 433c8d950cb3a1fa0977355ce0367e8c763a3f13 with fixes for MIPS. Similar to D102742, specifying the stack alignment via CodegenOpts means that this flag gets dropped during LTO, unless the command line is re-specified as a plugin opt. Instead, encode this information as a module level attribute so that we don't have to expose this llvm internal flag when linking the Linux kernel with LTO. Looks like external dependencies might need a fix: * llvm-hs/llvm-hs#345 * halide/Halide#6079 Link: ClangBuiltLinux/linux#1377 Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D103048 llvm-monorepo: 3787ee457173c3612aac4c9b1a2b6d6ab0202616
I'm removing this upstream in https://reviews.llvm.org/D103048; IIRC llvm-hs is using this. Once rebased,
Module::getOverrideStackAlignment
should be used instead.The text was updated successfully, but these errors were encountered: