diff options
author | Yonghong Song <yhs@fb.com> | 2017-10-16 04:14:53 +0000 |
---|---|---|
committer | Yonghong Song <yhs@fb.com> | 2017-10-16 04:14:53 +0000 |
commit | 6621cf67cf2047f5246732880d583854b212224c (patch) | |
tree | d17ddefbb32f03d4b3412366d8641be65b13f9cc /llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | |
parent | e3a3e3c9e9d3c81e530431be213857cd34eecb56 (diff) | |
download | bcm5719-llvm-6621cf67cf2047f5246732880d583854b212224c.tar.gz bcm5719-llvm-6621cf67cf2047f5246732880d583854b212224c.zip |
bpf: fix bug on silently truncating 64-bit immediate
We came across an llvm bug when compiling some testcases that 64-bit
immediates are silently truncated into 32-bit and then packed into
BPF_JMP | BPF_K encoding. This caused comparison with wrong value.
This bug looks to be introduced by r308080. The Select_Ri pattern is
supposed to be lowered into J*_Ri while the latter only support 32-bit
immediate encoding, therefore Select_Ri should have similar immediate
predicate check as what J*_Ri are doing.
Reported-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Jiong Wang <jiong.wang@netronome.com>
Reviewed-by: Yonghong Song <yhs@fb.com>
llvm-svn: 315889
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp')
0 files changed, 0 insertions, 0 deletions