3.6.1 patch nomination: r231984 & r232176 (illegal type support fixes)

Paweł Bylica chfast at gmail.com
Wed Mar 18 05:56:59 PDT 2015


--------------------------------------------------------------------
r231984:

URL: http://llvm.org/viewvc/llvm-project?rev=231984&view=rev
Log:
Handle big index in getelementptr instruction

CodeGen incorrectly ignores (assert from APInt) constant index bigger
than 2^64 in getelementptr instruction. This is a test and fix for that.

Patch by Paweł Bylica!

Reviewed By: rnk

Subscribers: majnemer, rnk, mcrosier, resistor, llvm-commits

Differential Revision: http://reviews.llvm.org/D8219

Added:
    llvm/trunk/test/CodeGen/X86/getelementptr.ll
Modified:
    llvm/trunk/lib/CodeGen/SelectionDAG/FastISel.cpp
    llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp

--------------------------------------------------------------------
r232176:

URL: http://llvm.org/viewvc/llvm-project?rev=232176&view=rev
Log:
ConstantFold: Fix big shift constant folding

Constant folding for shift IR instructions ignores all bits above 32 of
second argument (shift amount).
Because of that, some undef results are not recognized and APInt can
raise an assert failure if second argument has more than 64 bits.

Patch by Paweł Bylica!

Differential Revision: http://reviews.llvm.org/D7701


Added:
    llvm/trunk/test/Transforms/ConstProp/shift.ll
Modified:
    llvm/trunk/lib/IR/ConstantFold.cpp
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150318/7693bfb4/attachment.html>


More information about the llvm-commits mailing list