aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorHarald van Dijk <harald.vandijk@codeplay.com>2024-10-29 17:30:30 +0000
committerGitHub <noreply@github.com>2024-10-29 17:30:30 +0000
commit950ee75909d94c582ecac4d3d559c364ed88244f (patch)
treebdf9a29f460e85b3d549fd406163704e954c8e8d /flang/lib/Frontend/CompilerInvocation.cpp
parentb510cdb895b9188e5819c4c85a6dab22a4d14385 (diff)
downloadllvm-950ee75909d94c582ecac4d3d559c364ed88244f.zip
llvm-950ee75909d94c582ecac4d3d559c364ed88244f.tar.gz
llvm-950ee75909d94c582ecac4d3d559c364ed88244f.tar.bz2
[RISC-V] Fix check of minimum vlen. (#114055)
If we have a minimum vlen, we were adjusting StackSize to change the unit from vscale to bytes, and then calculating the required padding size for alignment in bytes. However, we then used that padding size as an offset in vscale units, resulting in misplaced stack objects. While it would be possible to adjust the object offsets by dividing AlignmentPadding by ST.getRealMinVLen() / RISCV::RVVBitsPerBlock, we can simplify the calculation a bit if instead we adjust the alignment to be in vscale units. @topperc This fixes a bug I am seeing after #110312, but I am not 100% certain I am understanding the code correctly, could you please see if this makes sense to you?
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions