- Aug 09, 2009
-
-
Chris Lattner authored
2. Move section switch printing to MCSection virtual method which takes a TAI. This eliminates textual formatting stuff from TLOF. 3. Eliminate SwitchToSectionDirective, getSectionFlagsAsString, and TLOFELF::AtIsCommentChar. llvm-svn: 78510
-
- Aug 08, 2009
-
-
Chris Lattner authored
A TAI hook is appropriate in this case because this is just an asm syntax issue, not a semantic difference. TLOF should model the semantics of the section. llvm-svn: 78498
-
Jakob Stoklund Olesen authored
Blackfin supports and/or/xor on i32 but not on i16. Teach DAGCombiner::SimplifyBinOpWithSameOpcodeHands to not produce illegal nodes after legalize ops. llvm-svn: 78497
-
Bruno Cardoso Lopes authored
Handle large integers, x86_fp80, ConstantAggregateZero, and two more ConstantExpr: GetElementPtr and IntToPtr Set SHF_MERGE bit for mergeable strings Avoid zero initialized strings to be classified as a bss symbol Don't allow common symbols to be classified as STB_WEAK Add a constant to be used as a global value offset in data relocations llvm-svn: 78476
-
Jakob Stoklund Olesen authored
Also don't dereference old pointers after they have been deleted causing random crashes when enabling the machine code verifier. Ahem... I have not included a test case for the crash. It hapened when enabling the verifier on CodeGen/X86/2009-08-06-branchfolder-crash.ll. The crash depends on an MBB being allocated at the same address as a previously deleted MBB. I don't think that can be reproduced reliably. llvm-svn: 78472
-
Jakob Stoklund Olesen authored
* Cleaner handling of <undef>. * <def> takes precedence over <def,dead>. * Implement the OK-to-redefine-a-register-that-was- live-in-but-has-not-been-used-before rule. llvm-svn: 78467
-
Jakob Stoklund Olesen authored
Now there is no special treatment of instructions that redefine part of a super-register. Instead, the super-register is marked with <imp-use,kill> and <imp-def>. For instance, from LowerSubregs on ARM: subreg: CONVERTING: %Q1<def> = INSERT_SUBREG %Q1<undef>, %D1<kill>, 5 subreg: %D2<def> = FCPYD %D1<kill>, 14, %reg0, %Q1<imp-def> subreg: CONVERTING: %Q1<def> = INSERT_SUBREG %Q1, %D0<kill>, 6 subreg: %D3<def> = FCPYD %D0<kill>, 14, %reg0, %Q1<imp-use,kill>, %Q1<imp-def> llvm-svn: 78466
-
Jakob Stoklund Olesen authored
Verify that early clobber registers and their aliases are not used. All changes to RegsAvailable are now done as a transaction so the order of operands makes no difference. The included test case is from PR4686. It has behaviour that was dependent on the order of operands. llvm-svn: 78465
-
Daniel Dunbar authored
llvm-svn: 78447
-
Chris Lattner authored
llvm-svn: 78432
-
Chris Lattner authored
llvm-svn: 78428
-
Evan Cheng authored
llvm-svn: 78421
-
Chris Lattner authored
llvm-svn: 78416
-
- Aug 07, 2009
-
-
Dale Johannesen authored
preference; no functional change. llvm-svn: 78391
-
Evan Cheng authored
Another coalescer bug. When a dead copy is eliminated, transfer the kill to a def of the exact register rather than a super-register. llvm-svn: 78376
-
Daniel Dunbar authored
llvm-svn: 78367
-
Dan Gohman authored
llvm-svn: 78363
-
Dan Gohman authored
llvm-svn: 78362
-
Evan Cheng authored
llvm-svn: 78360
-
Lang Hames authored
Added legal stuff, fixed some formatting issues. Removed the graph generator stuff as it was only meant for debugging the solver. llvm-svn: 78359
-
Lang Hames authored
New C++ PBQP solver. Currently about as fast (read _slow_) as the old C based solver, but I'll be working to improve that. The PBQP allocator has been updated to use the new solver. llvm-svn: 78354
-
Dale Johannesen authored
produced a CFG it wasn't prepared for. llvm-svn: 78351
-
Dale Johannesen authored
llvm-svn: 78350
-
- Aug 06, 2009
-
-
Jakob Stoklund Olesen authored
If we need it one day, there is nothing wrong with putting it back in. llvm-svn: 78337
-
John Mosby authored
- start support for new PEI w/reg alloc, allow running RS from emit{Pro,Epi}logue() target hooks. - fix minor issue with recursion detection. llvm-svn: 78318
-
Dan Gohman authored
and LowerReturn, to verify that the targets' hooks have respected some of their postconditions. llvm-svn: 78312
-
Dan Gohman authored
types don't have any return values, from CodeGen's perspective. This fixes PR4688. llvm-svn: 78311
-
Dan Gohman authored
and high-bits values in ways that weren't correct for integer types wider than 64 bits. This fixes a miscompile in PPMacroExpansion.cpp in clang on x86-64. llvm-svn: 78295
-
Owen Anderson authored
Privatize the StructType table, which unfortunately involves routing contexts through a number of APIs. llvm-svn: 78258
-
- Aug 05, 2009
-
-
David Greene authored
Fix some column padding bugs, reorganize things as suggested by Chris and eliminate complexity. Yay! llvm-svn: 78243
-
Chris Lattner authored
llvm-svn: 78242
-
Benjamin Kramer authored
llvm-svn: 78202
-
Evan Cheng authored
llvm-svn: 78179
-
Evan Cheng authored
After coalescing reg1027's def and kill are both at the same point: %reg1027,0.000000e+00 = [56,814:0) 0@70-(814) bb5: 60 %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0 68 %reg1027<def> = t2LDRi12 %reg1027<kill>, 8, 14, %reg0 76 t2CMPzri %reg1038<kill,undef>, 0, 14, %reg0, %CPSR<imp-def> 84 %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0 96 t2Bcc mbb<bb5,0x2030910>, 1, %CPSR<kill> Do not remove the kill marker on t2LDRi12. llvm-svn: 78178
-
Bruno Cardoso Lopes authored
llvm-svn: 78177
-
Bruno Cardoso Lopes authored
a dirty hack and isn't need anymore since the last x86 code emitter patch) - Add a target-dependent modifier to addend calculation - Use R_X86_64_32S relocation for X86::reloc_absolute_word_sext - Use getELFSectionFlags whenever possible - fix getTextSection to use TLOF and emit the right text section - Handle global emission for static ctors, dtors and Type::PointerTyID - Some minor fixes llvm-svn: 78176
-
Chris Lattner authored
llvm-svn: 78154
-
Evan Cheng authored
llvm-svn: 78151
-
Evan Cheng authored
llvm-svn: 78145
-
Evan Cheng authored
llvm-svn: 78144
-