- Jul 02, 2011
-
-
Evan Cheng authored
llvm-svn: 134298
-
Cameron Zwarich authored
llvm-svn: 134287
-
Eric Christopher authored
up the valid constant check earlier. rdar://9692967 llvm-svn: 134286
-
Douglas Gregor authored
llvm-svn: 134282
-
Evan Cheng authored
llvm-svn: 134281
-
Evan Cheng authored
llvm-svn: 134279
-
Dan Gohman authored
outside the loop and reducible. This more completely hides them from LSR, which isn't usually able to do anything meaningful with non-affine expressions anyway, and this consequently hides them from SCEVExpander, which is acutely unprepared for non-affine expressions. Replace test/CodeGen/X86/lsr-nonaffine.ll with a new test that tests the new behavior. This works around the bug in PR10117 / rdar://problem/9633149, and is generally an improvement besides. llvm-svn: 134268
-
- Jul 01, 2011
-
-
Owen Anderson authored
Generalize @llvm.ctlz, @llvm.cttz, and @llvm.ctpop to work on vectors of integers, and fix the one optimization pass that I'm aware of that needs updating for this. At least one current target, ARM NEON, can implement these operations on vectors directly. llvm-svn: 134265
-
Eli Friedman authored
llvm-svn: 134264
-
Jim Grosbach authored
The DSP instructions in the Thumb2 instruction set are an optional extension in the Cortex-M* archtitecture. When present, the implementation is considered an "ARMv7E-M implementation," and when not, an "ARMv7-M implementation." Add a subtarget feature hook for the v7e-m instructions and hook it up. The cortex-m3 cpu is an example of a v7m implementation, while the cortex-m4 is a v7e-m implementation. rdar://9572992 llvm-svn: 134261
-
Evan Cheng authored
llvm-svn: 134259
-
Evan Cheng authored
itineraries. - Refactor TargetSubtarget to be based on MCSubtargetInfo. - Change tablegen generated subtarget info to initialize MCSubtargetInfo and hide more details from targets. llvm-svn: 134257
-
Jim Grosbach authored
(low two bits always zero, so off by one bit of encoded value). llvm-svn: 134247
-
Evan Cheng authored
llvm-svn: 134244
-
Jim Grosbach authored
t2MOVCC[ri] are just t2MOV[ri] instructions, so properly pseudo-ize them. The Thumb1 versions, tMOVCC[ri] were only present for use by the size- reduction pass, so they're no longer necessary at all and can be deleted. llvm-svn: 134242
-
Evan Cheng authored
llvm-svn: 134240
-
Duncan Sands authored
copy is a kill") to see if it fixes the i386 dragonegg buildbot, which is timing out because gcc built with dragonegg is going into an infinite loop. llvm-svn: 134237
-
Francois Pichet authored
llvm-svn: 134236
-
Nick Lewycky authored
llvm-svn: 134235
-
Rafael Espindola authored
llvm-svn: 134234
-
Rafael Espindola authored
llvm-svn: 134231
-
Rafael Espindola authored
llvm-svn: 134229
-
Rafael Espindola authored
llvm-svn: 134228
-
Jakob Stoklund Olesen authored
The constraints are represented by the register class of the original virtual register created for the inline asm. If the register class were included in the operand descriptor, we might be able to do this. For now, just give up on regclass inflation when inline asm is involved. No test case, this bug hasn't happened yet. llvm-svn: 134226
-
Akira Hatanaka authored
llvm-svn: 134224
-
Dan Gohman authored
llvm-svn: 134223
-
Eric Christopher authored
supporting the instruction that the constraint is for 'movw'. Part of rdar://9119939 llvm-svn: 134222
-
Dan Gohman authored
llvm-svn: 134221
-
Eric Christopher authored
for the 'x' register constraint. Part of rdar://9119939 llvm-svn: 134220
-
Evan Cheng authored
llvm-svn: 134219
-
Eric Christopher authored
Part of rdar://9119939 llvm-svn: 134217
-
Rafael Espindola authored
llvm-svn: 134216
-
Eric Christopher authored
Part of rdar://9307836 and rdar://9119939 llvm-svn: 134215
-
Bill Wendling authored
llvm-svn: 134212
-
Eric Christopher authored
llvm-svn: 134211
-
Eric Christopher authored
llvm-svn: 134210
-
Bill Wendling authored
llvm-svn: 134209
-
Bill Wendling authored
llvm-svn: 134208
-
Jakob Stoklund Olesen authored
We would put the return value from long double functions in the wrong register. This fixes gcc.c-torture/execute/conversion.c llvm-svn: 134205
-
Jim Grosbach authored
Merge the tMOVr, tMOVgpr2tgpr, tMOVtgpr2gpr, and tMOVgpr2gpr instructions into tMOVr. There's no need to keep them separate. Giving the tMOVr instruction the proper GPR register class for its operands is sufficient to give the register allocator enough information to do the right thing directly. llvm-svn: 134204
-