aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2016-08-29 13:15:35 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2016-08-29 13:15:35 +0000
commit0a955d6dcb8108d7a4fdd9aec0f46fab5e447230 (patch)
tree88b8dfb2696ae1b59a89e0b0372729c4c4306320 /llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp
parent5d3f71f721273e17412dcb3a1726235aabc65651 (diff)
downloadllvm-0a955d6dcb8108d7a4fdd9aec0f46fab5e447230.zip
llvm-0a955d6dcb8108d7a4fdd9aec0f46fab5e447230.tar.gz
llvm-0a955d6dcb8108d7a4fdd9aec0f46fab5e447230.tar.bz2
Do not use MRI::getMaxLaneMaskForVReg as a mask covering whole register
MRI::getMaxLaneMaskForVReg does not always cover the whole register. For example, on X86 the upper 16 bits of EAX cannot be accessed via any subregister. Consequently, there is no lane mask that only covers that part of EAX. The getMaxLaneMaskForVReg will return the union of the lane masks for all subregisters, and in case of EAX, that union will not cover the upper 16 bits. This fixes https://llvm.org/bugs/show_bug.cgi?id=29132 llvm-svn: 279969
Diffstat (limited to 'llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp')
0 files changed, 0 insertions, 0 deletions