[PATCH] D105288: [coro async] Cap the alignment of spilled values (vs. allocas) at the max frame alignment
Arnold Schwaighofer via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 6 06:44:12 PDT 2021
aschwaighofer added a comment.
Oh my. You are right I should have verified that when we spill that value though we use the right alignment. Because we don't. :(.
%vector_spill = load <4 x double>, <4 x double>* %vector, align 16
%vector_spill.spill.addr = getelementptr inbounds %my_async_function.Frame, %my_async_function.Frame* %FramePtr, i32 0, i32 1, !dbg !6
store <4 x double> %vector_spill, <4 x double>* %vector_spill.spill.addr, align 32, !dbg !6
The code that spills/reloads does not use the alignment we have computed for the spill slot.
Rather it just does:
Builder.CreateStore(Def, G);
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D105288/new/
https://reviews.llvm.org/D105288
More information about the llvm-commits
mailing list