- Jan 30, 2010
-
-
Daniel Dunbar authored
something totally broken and parsing them as immediates, but the .td file also had the wrong match class so things sortof worked. Except, that is, that we would parse movl $0, %eax as movl 0, %eax Feel free to guess how well that worked. llvm-svn: 94869
-
Dale Johannesen authored
llvm-svn: 94866
-
Bob Wilson authored
llvm-svn: 94863
-
Daniel Dunbar authored
llvm-svn: 94861
-
Daniel Dunbar authored
register, and use to cleanup a FIXME in X86AsmParser.cpp. llvm-svn: 94859
-
Jakob Stoklund Olesen authored
This bug was exposed by my inliner cost changes in r94615, and caused failures of lencod on most architectures when building with LTO. This patch fixes lencod and 464.h264ref on x86-64 (and likely others). llvm-svn: 94858
-
Johnny Chen authored
bit (Inst{22}) and the M bit (Inst{5}) should be left unspecified. For binary format instructions, Inst{6} and Inst{4} need to specified for proper decodings. llvm-svn: 94855
-
Dan Gohman authored
them from values that are not actually defined in the module. llvm-svn: 94854
-
Evan Cheng authored
llvm-svn: 94853
-
- Jan 29, 2010
-
-
Bob Wilson authored
create a testcase where this matters. The select+load transformation only occurs when isSafeToLoadUnconditionally is true, and in those situations, instcombine also changes the underlying objects to be aligned. This seems like a good idea regardless, and I've verified that it doesn't pessimize the subsequent realignment. llvm-svn: 94850
-
Dale Johannesen authored
llvm-svn: 94843
-
Victor Hernandez authored
We were not writing bitcode for function-local metadata whose operands have been erased (making it not have any more function-local operands) llvm-svn: 94842
-
Eric Christopher authored
llvm-svn: 94841
-
Bob Wilson authored
llvm-svn: 94835
-
Bob Wilson authored
indices are safe if the result is known to be within the bounds of the underlying object. llvm-svn: 94829
-
Devang Patel authored
llvm-svn: 94822
-
Devang Patel authored
Before inserting llvm.dbg.declare intrinsic at the end of a basic block, check whether the basic block has a terminator or not. This API is used by clang and the test case is test/CodeGen/debug-info-crash.c in clang module. llvm-svn: 94820
-
Benjamin Kramer authored
llvm-svn: 94809
-
Benjamin Kramer authored
llvm-svn: 94808
-
Benjamin Kramer authored
llvm-svn: 94807
-
Duncan Sands authored
llvm-svn: 94805
-
Evan Cheng authored
llvm-svn: 94804
-
Duncan Sands authored
(via APInt &RHSKnownZero = KnownZero, etc) seems dangerous and confusing to me: it is easy not to notice this, and then wonder why KnownZero/RHSKnownZero changed underneath you when you modified RHSKnownZero/KnownZero etc. So get rid of this. No intended functionality change (tested with "make check" + llvm-gcc bootstrap). llvm-svn: 94802
-
Duncan Sands authored
(fix for PR6165) are needed here too. llvm-svn: 94801
-
Eric Christopher authored
llvm-svn: 94783
-
Eric Christopher authored
lowering. We'll either figure it out, or not and be lowered by SelectionDAGBuild. Add test. llvm-svn: 94775
-
Bill Wendling authored
llvm-svn: 94771
-
Bill Wendling authored
llvm-svn: 94765
-
Sean Callanan authored
enhanced disassembler, and the necessary makefile rules to build the table for X86. llvm-svn: 94764
-
Victor Hernandez authored
llvm-svn: 94763
-
- Jan 28, 2010
-
-
Bill Wendling authored
"visit*" method is called, take the newly created nodes, walk them in a DFS fashion, and if they don't have an ordering set, then give it one. llvm-svn: 94757
-
Dan Gohman authored
getelementptr (i8* inttoptr (i64 1 to i8*), i32 -1) to inttoptr (i64 0 to i8*) from the VMCore constant folder. It didn't handle sign-extension properly in the case where the source integer is smaller than a pointer size. And, it relied on an assumption about sizeof(i8). The Analysis constant folder still folds these kinds of things; it has access to TargetData, so it can do them right. Add a testcase which tests that the VMCore constant folder doesn't miscompile this, and that the Analysis folder does fold it. llvm-svn: 94750
-
Benjamin Kramer authored
llvm-svn: 94746
-
Duncan Sands authored
when it should have been and'd with LowBits. Fix that and while there beef up the logic in the case of a negative LHS. llvm-svn: 94745
-
Douglas Gregor authored
llvm-svn: 94743
-
Dan Gohman authored
rather than after. llvm-svn: 94742
-
Chris Lattner authored
it has before/end body hooks. lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp | 49 ++----------- lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp | 87 ++++++------------------ lib/Target/XCore/AsmPrinter/XCoreAsmPrinter.cpp | 56 +++------------ test/CodeGen/XCore/ashr.ll | 2 4 files changed, 48 insertions(+), 146 deletions(-) llvm-svn: 94741
-
Dan Gohman authored
getOffsetOf, and remove the comment about assuming i8 is byte-aligned, which is no longer applicable. llvm-svn: 94738
-
Dan Gohman authored
use plain SCEVUnknowns with ConstantExpr::getSizeOf and ConstantExpr::getOffsetOf constants. This eliminates a bunch of special-case code. Also add code for pattern-matching these expressions, for clients that want to recognize them. Move ScalarEvolution's logic for expanding array and vector sizeof expressions into an element count times the element size, to expose the multiplication to subsequent folding, into the regular constant folder. llvm-svn: 94737
-
Chris Lattner authored
llvm-svn: 94732
-