[all-commits] [llvm/llvm-project] 95fedf: [InstCombine] Handle non-canonical GEP index in in...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Mon May 2 08:56:18 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 95fedfab6cfb82a2fe1010d266b1269425f5eb46
https://github.com/llvm/llvm-project/commit/95fedfab6cfb82a2fe1010d266b1269425f5eb46
Author: Nikita Popov <npopov at redhat.com>
Date: 2022-05-02 (Mon, 02 May 2022)
Changed paths:
M llvm/include/llvm/IR/Constants.h
M llvm/lib/IR/Constants.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
A llvm/test/Transforms/InstCombine/pr55228.ll
Log Message:
-----------
[InstCombine] Handle non-canonical GEP index in indexed compare fold (PR55228)
Normally the index type will already be canonicalized here, but
this is not guaranteed depending on visitation order. The code
was already accounting for a potentially needed sext, but a trunc
may also be needed.
Add a ConstantExpr::getSExtOrTrunc() helper method to make this
simpler. This matches the corresponding IRBuilder method in behavior.
Fixes https://github.com/llvm/llvm-project/issues/55228.
More information about the All-commits
mailing list