- Jun 03, 2010
-
-
Eric Christopher authored
llvm-svn: 105379
-
Eli Friedman authored
expansion is the same as that used by LegalizeDAG. The resulting code sucks in terms of performance/codesize on x86-32 for a 64-bit operation; I haven't looked into whether different expansions might be better in general. llvm-svn: 105378
-
Eli Friedman authored
llvm-svn: 105377
-
Eli Friedman authored
llvm-svn: 105376
-
Eli Friedman authored
llvm-svn: 105375
-
Jakob Stoklund Olesen authored
This affects both llvm-gcc and clang. llvm-svn: 105372
-
Jakob Stoklund Olesen authored
spills and reloads. This means that a partial define of a register causes a reload so the other parts of the register are preserved. The reload can be prevented by adding an <imp-def> operand for the full register. This is already done by the coalescer and live interval analysis where relevant. llvm-svn: 105369
-
Jakob Stoklund Olesen authored
register updates. These operands tell the spiller that the other parts of the partially defined register are don't-care, and a reload is not necessary. llvm-svn: 105361
-
Devang Patel authored
Speedup bitcode writer. Do not walk all values for all functions to emit function local metadata. In one testcase, probably worst case scenario, the 70x speed up is seen. llvm-svn: 105360
-
Bill Wendling authored
llvm-svn: 105359
-
Jakob Stoklund Olesen authored
instruction defines subregisters. Any existing subreg indices on the original instruction are preserved or composed with the new subreg index. Also substitute multiple operands mentioning the original register by using the new MachineInstr::substituteRegister() function. This is necessary because there will soon be <imp-def> operands added to non read-modify-write partial definitions. This instruction: %reg1234:foo = FLAP %reg1234<imp-def> will reMaterialize(%reg3333, bar) like this: %reg3333:bar-foo = FLAP %reg333:bar<imp-def> Finally, replace the TargetRegisterInfo pointer argument with a reference to indicate that it cannot be NULL. llvm-svn: 105358
-
- Jun 02, 2010
-
-
Jim Grosbach authored
llvm-svn: 105350
-
Rafael Espindola authored
llvm-svn: 105344
-
Eli Friedman authored
backend. Add a FIXME noting what can be fixed here. llvm-svn: 105342
-
Dan Gohman authored
mailing list archives. llvm-svn: 105341
-
Devang Patel authored
llvm-svn: 105340
-
Bob Wilson authored
and tidy up the comment describing it. llvm-svn: 105339
-
Rafael Espindola authored
llvm-svn: 105335
-
Devang Patel authored
Use local small vector. llvm-svn: 105332
-
Rafael Espindola authored
llvm-svn: 105325
-
Jim Grosbach authored
for debug information. llvm-svn: 105324
-
Rafael Espindola authored
llvm-svn: 105322
-
Rafael Espindola authored
backends and removes the virtual declaration. With that out of the way I should be able to cleanup one backend at a time. llvm-svn: 105321
-
Evan Cheng authored
llvm-svn: 105308
-
Eli Friedman authored
x86 backend currently doesn't know how to handle them. This doesn't really fix anything because LegalizeTypes doesn't know how to handle them either. We do get a better error message, though. llvm-svn: 105305
-
Bob Wilson authored
checked and it is safe to proceed with the changes. llvm-svn: 105304
-
Eli Friedman authored
llvm-svn: 105303
-
-
Jakob Stoklund Olesen authored
The comment about ordering of subreg indices is no longer true. This exposed a bug in the new substVirtReg method that is also fixed. llvm-svn: 105294
-
- Jun 01, 2010
-
-
Jim Grosbach authored
llvm-svn: 105293
-
Devang Patel authored
llvm-svn: 105292
-
Jim Grosbach authored
llvm-svn: 105291
-
Dan Gohman authored
in X86FastISel. Patch by Jan Sjodin. llvm-svn: 105290
-
Jim Grosbach authored
change a few SmallVectors to vanilla C arrays. llvm-svn: 105289
-
Dan Gohman authored
an argument aliasing itself. Thanks Duncan! llvm-svn: 105288
-
Devang Patel authored
Radar 7927666. llvm-svn: 105285
-
Dan Gohman authored
llvm-svn: 105283
-
Jim Grosbach authored
llvm-svn: 105282
-
Jim Grosbach authored
llvm-svn: 105281
-
Jim Grosbach authored
handle structs passed by value via an extract/insert pair, as a bitcast won't work on a struct. rdar://7742824 llvm-svn: 105280
-