- Feb 09, 2012
-
-
Jakob Stoklund Olesen authored
I think this was already the intention, but DeadMachineInstructionElim was accidentally tracking the liveness of reserved registers. Now, instructions with reserved defs are never deleted. This prevents the call stack adjustment instructions from getting deleted when enabling register masks. llvm-svn: 150116
-
- Feb 08, 2012
-
-
Jakob Stoklund Olesen authored
For simplicity, treat calls with register masks as basic block boundaries. This means we can't copy propagate callee-saved registers across calls, but I don't think that is a big deal. llvm-svn: 150108
-
Kostya Serebryany authored
llvm-svn: 150102
-
Andrew Trick authored
Moving toward a uniform style of pass definition to allow easier target configuration. Globally declare Pass ID. Globally declare pass initializer. Use INITIALIZE_PASS consistently. Add a call to the initializer from CodeGen.cpp. Remove redundant "createPass" functions and "getPassName" methods. While cleaning up declarations, cleaned up comments (sorry for large diff). llvm-svn: 150100
-
Andrew Trick authored
llvm-svn: 150099
-
Andrew Trick authored
llvm-svn: 150098
-
Andrew Trick authored
llvm-svn: 150097
-
Andrew Trick authored
llvm-svn: 150096
-
Andrew Trick authored
llvm-svn: 150095
-
Andrew Trick authored
llvm-svn: 150094
-
Andrew Trick authored
llvm-svn: 150093
-
Andrew Trick authored
llvm-svn: 150092
-
Andrew Trick authored
llvm-svn: 150091
-
Jakob Stoklund Olesen authored
When a virtual register is live across a call, limit the search space to call-preserved registers. llvm-svn: 150081
-
Brendon Cahoon authored
Creating the isPredicated TSFlag enables the code to use the property defined in the instruction format instead of using a large switch statement. llvm-svn: 150078
-
Jakob Stoklund Olesen authored
Build an ordered vector of register mask operands (i.e., calls) when computing live intervals. Provide a checkRegMaskInterference() function that computes a bit mask of usable registers for a live range. This is a quick way of determining of a live range crosses any calls, and restricting it to the callee saved registers if it does. Previously, we had to discover call clobbers for each candidate register independently. llvm-svn: 150077
-
Duncan Sands authored
and setting that. llvm-svn: 150074
-
Benjamin Kramer authored
llvm-svn: 150071
-
Elena Demikhovsky authored
> This IR code > %res = call <8 x float> @llvm.x86.avx.cmp.ps.256(<8 x float> %a0, <8 x float> %a1, i8 14) > fails with assertion: > > llc: X86ATTInstPrinter.cpp:62: void llvm::X86ATTInstPrinter::printSSECC(const llvm::MCInst*, unsigned int, llvm::raw_ostream&): Assertion `0 && "Invalid ssecc argument!"' failed. > 0 llc 0x0000000001355803 > 1 llc 0x0000000001355dc9 > 2 libpthread.so.0 0x00007f79a30575d0 > 3 libc.so.6 0x00007f79a23a1945 gsignal + 53 > 4 libc.so.6 0x00007f79a23a2f21 abort + 385 > 5 libc.so.6 0x00007f79a239a810 __assert_fail + 240 > 6 llc 0x00000000011858d5 llvm::X86ATTInstPrinter::printSSECC(llvm::MCInst const*, unsigned int, llvm::raw_ostream&) + 119 I added the full testing for all possible pseudo-ops of cmp. I extended X86AsmPrinter.cpp and X86IntelInstPrinter.cpp. You'l also see lines alignments (unrelated to this fix) in X86IselLowering.cpp from my previous check-in. llvm-svn: 150068
-
Craig Topper authored
llvm-svn: 150067
-
Craig Topper authored
Remove GCC builtins for vpermilp* intrinsics as clang no longer needs them. Custom lower the intrinsics to the vpermilp target specific node and remove intrinsic patterns. llvm-svn: 150060
-
Chad Rosier authored
llvm-svn: 150047
-
Chad Rosier authored
llvm-svn: 150045
-
Andrew Trick authored
llvm-svn: 150044
-
Andrew Trick authored
llvm-svn: 150043
-
Andrew Trick authored
llvm-svn: 150041
-
Eric Christopher authored
can rauw forward declarations if we decide to emit the full type. Part of rdar://10809898 llvm-svn: 150024
-
Devang Patel authored
llvm-svn: 150022
-
Chad Rosier authored
llvm-svn: 150014
-
Devang Patel authored
llvm-svn: 150012
-
- Feb 07, 2012
-
-
Evan Cheng authored
llvm-svn: 150008
-
David Blaikie authored
llvm-svn: 149999
-
Evan Cheng authored
load / store) if the ADD / SUB has a live definition of CPSR. Bug reported by David Meyer. Alas, no test case. llvm-svn: 149970
-
Craig Topper authored
llvm-svn: 149968
-
Craig Topper authored
llvm-svn: 149967
-
Craig Topper authored
llvm-svn: 149961
-
Bill Wendling authored
llvm-svn: 149954
-
Bill Wendling authored
much. This gets us an addition 0.9% on 445.gobmk. llvm-svn: 149952
-
Derek Schuff authored
llvm-svn: 149941
-
Chad Rosier authored
llvm-svn: 149934
-