- Nov 16, 2010
-
-
Dan Gohman authored
easier to debug, and to avoid complications when the CFG changes in the middle of the instruction selection process. llvm-svn: 119382
-
Jakob Stoklund Olesen authored
Always spill the full representative register at any point where any subregister is live. This fixes PR8620 which caused the old logic to get confused and not spill anything at all. The fundamental problem here is that the coalescer is too aggressive about physical register coalescing. It sometimes makes it impossible to allocate registers without these emergency spills. llvm-svn: 119375
-
Jakob Stoklund Olesen authored
llvm-svn: 119374
-
Rafael Espindola authored
llvm-svn: 119362
-
Michael J. Spencer authored
The system API's will be shifted over to returning an error_code, and returning other return values as out parameters to the function. Code that needs to check error conditions will use the errc enum values which are the same as the posix_errno defines (EBADF, E2BIG, etc...), and are compatable with the error codes in WinError.h due to some magic in system_error. An example would be: if (error_code ec = KillEvil("Java")) { // error_code can be converted to bool. handle_error(ec); } llvm-svn: 119360
-
Jim Grosbach authored
llvm-svn: 119354
-
Duncan Sands authored
rather than calling hasConstantValue. No intended functionality change. llvm-svn: 119352
-
Duncan Sands authored
over a phi node by applying it to each operand may be wrong if the operation and the phi node are mutually interdependent (the testcase has a simple example of this). So only do this transform if it would be correct to perform the operation in each predecessor of the block containing the phi, i.e. if the other operands all dominate the phi. This should fix the FFMPEG snow.c regression reported by İsmail Dönmez. llvm-svn: 119347
-
Rafael Espindola authored
llvm-svn: 119328
-
Bill Wendling authored
llvm-svn: 119325
-
Bill Wendling authored
- Add encodings to the *LDMIA_RET instrs. Probably not needed... llvm-svn: 119323
-
Bill Wendling authored
llvm-svn: 119321
-
Eric Christopher authored
(and likely) wrong about anyhow. llvm-svn: 119320
-
Chris Lattner authored
branches to be emitted as: bne cr0, 2 instead of: bne cr0, $+8 llvm-svn: 119317
-
Bill Wendling authored
'db', 'ib', 'da') instead of having that mode as a separate field in the instruction. It's more convenient for the asm parser and much more readable for humans. <rdar://problem/8654088> llvm-svn: 119310
-
Michael J. Spencer authored
llvm-svn: 119309
-
Chris Lattner authored
llvm-svn: 119308
-
Chris Lattner authored
these instructions to be encoded with getMachineOpValue. This unbreaks ExecutionEngine/2003-01-04-ArgumentBug.ll when running on a G5 llvm-svn: 119307
-
Jakob Stoklund Olesen authored
Use amazing new function call technology instead of writing identical code in multiple places. This fixes PR8604. llvm-svn: 119306
-
Jakob Stoklund Olesen authored
The live range of a register defined by an early clobber starts at the use slot, not the def slot. Except when it is an early clobber tied to a use operand. Then it starts at the def slot like a standard def. llvm-svn: 119305
-
Owen Anderson authored
llvm-svn: 119295
-
Rafael Espindola authored
llvm-svn: 119286
-
- Nov 15, 2010
-
-
Chris Lattner authored
to be broken for other reasons llvm-svn: 119283
-
Jakob Stoklund Olesen authored
This reverts r119183 which borke the buildbots. llvm-svn: 119270
-
Owen Anderson authored
llvm-svn: 119187
-
Evan Cheng authored
iterator, not TII->OptimizeCompareInstr. llvm-svn: 119186
-
Owen Anderson authored
llvm-svn: 119185
-
Eric Christopher authored
pass in the first place and was masked by earlier failures not warning and aborting the block. llvm-svn: 119184
-
Jakob Stoklund Olesen authored
The live range of a register defined by an early clobber starts at the use slot, not the def slot. llvm-svn: 119183
-
Jakob Stoklund Olesen authored
live ranges for the spill register are also defined at the use slot instead of the normal def slot. This fixes PR8612 for the inline spiller. A use was being allocated to the same register as a spilled early clobber def. This problem exists in all the spillers. A fix for the standard spiller is forthcoming. llvm-svn: 119182
-
Jim Grosbach authored
llvm-svn: 119180
-
Owen Anderson authored
llvm-svn: 119176
-
Benjamin Kramer authored
llvm-svn: 119175
-
Owen Anderson authored
llvm-svn: 119170
-
Jim Grosbach authored
llvm-svn: 119167
-
Jim Grosbach authored
llvm-svn: 119164
-
Duncan Sands authored
values that are equal to the phi itself. llvm-svn: 119161
-
Rafael Espindola authored
variable if recursing fails to simplify it. Factor AliasedSymbol to be a method of MCSymbol. Update MCAssembler::EvaluateFixup to match the change in EvaluateAsRelocatableImpl. Remove the WeakRefExpr hack, as the object writer now sees the weakref with no extra effort needed. Nothing else is using MCTargetExpr, but keep it for now. Now that the ELF writer sees relocations with aliases, handle .weak foo2 foo2: .weak bar2 .set bar2,foo2 .quad bar2 the same way gas does and produce a relocation with bar2. llvm-svn: 119152
-
Jason W Kim authored
Added 2 new subclasses - X86ELFObjectWriter and ARMELFObectWriter. ARM and X86 require different code for RecordRelocation(), possibly others. llvm-svn: 119149
-
Rafael Espindola authored
This moves most of the isUsed logic to the MCSymbol itself. With this we get a bit more relaxed about allowing definitions after uses: uses that don't evaluate their argument immediately (jmp foo) are accepted. ddunbar, this was the smallest compromise I could think of that lets us accept gcc (and clang!) assembly. llvm-svn: 119144
-