- Apr 19, 2010
-
-
Dan Gohman authored
than just getting one through a TargetLowering. llvm-svn: 101802
-
Dan Gohman authored
SelectionDAG-specific. llvm-svn: 101801
-
- Apr 17, 2010
-
-
Dan Gohman authored
llvm-svn: 101655
-
Dan Gohman authored
llvm-svn: 101640
-
Dan Gohman authored
llvm-svn: 101639
-
Dan Gohman authored
llvm-svn: 101638
-
Dan Gohman authored
llvm-svn: 101637
-
Dan Gohman authored
const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635
-
Evan Cheng authored
the live-in sets of BBs in the loop. Otherwise later pass may end up using the registers and override the invariant. rdar://7852937 No reasonablly sized test case possible. llvm-svn: 101626
-
Evan Cheng authored
llvm-svn: 101622
-
Evan Cheng authored
llvm-svn: 101621
-
Evan Cheng authored
llvm-svn: 101620
-
Bob Wilson authored
just remove them all. Radar 7873207 (working around the root problem of Radar 7759363). llvm-svn: 101604
-
Jakob Stoklund Olesen authored
Revert "Use a simpler data structure to calculate the least recently used register in RegAllocLocal." This reverts commit 101392. It broke a buildbot. llvm-svn: 101595
-
Eric Christopher authored
Probably the best way to know that all getOperand() calls have been handled is to replace that API instead of updating. llvm-svn: 101579
-
Devang Patel authored
llvm-svn: 101575
-
Jakob Stoklund Olesen authored
This makes the local register allocator about 20% faster. llvm-svn: 101574
-
Evan Cheng authored
(i32 sext_in_reg (i32 aext (i16 x)), i16) -> (i32 sext x). No known test case until -promote-16bit is enabled. llvm-svn: 101551
-
- Apr 16, 2010
-
-
Dan Gohman authored
SelectionDAG-specific parts of TargetLowering. llvm-svn: 101537
-
Dan Gohman authored
llvm-svn: 101532
-
Evan Cheng authored
llvm-svn: 101501
-
Evan Cheng authored
llvm-svn: 101500
-
Dan Gohman authored
llvm-svn: 101480
-
Dan Gohman authored
llvm-svn: 101478
-
Dan Gohman authored
llvm-svn: 101477
-
Gabor Greif authored
with a fix for self-hosting rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101465
-
Bill Wendling authored
JIT doesn't use the MC back-end asm printer to emit labels that it uses, the section for the MCSymbol is never set. And thus the MCSymbol for the EH label isn't marked as "defined". Because of that, TidyLandingPads removes the needed landing pads from the JIT output. This breaks EH for every JIT program. This is a work-around for this limitation. We pass in the label locations map. If the label has a non-zero value, then it was "emitted" by the JIT and TidyLandingPads shouldn't remove that label. A nicer solution would be to mark the MCSymbol as "used" by the JIT and not rely upon the section being set to determine if it's defined or not. llvm-svn: 101453
-
Evan Cheng authored
Adding support for dag combiner to promote operations for profit. This requires target specific queries. For example, x86 should promote i16 to i32 when it does not impact load folding. x86 support is off by default. It can be enabled with -promote-16bit. Work in progress. llvm-svn: 101448
-
Dan Gohman authored
llvm-svn: 101443
-
Gabor Greif authored
llvm-svn: 101434
-
Jakob Stoklund Olesen authored
MachineLoopInfo is already available when MachineSinking runs, so the check is free. There is no test case because it would require a critical edge into a loop, and CodeGenPrepare splits those. This check is just to be extra careful. llvm-svn: 101420
-
- Apr 15, 2010
-
-
Gabor Greif authored
with a fix rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101397
-
Jakob Stoklund Olesen authored
llvm-svn: 101392
-
Nicolas Geoffray authored
llvm-svn: 101388
-
Gabor Greif authored
llvm-svn: 101385
-
Dan Gohman authored
llvm-svn: 101376
-
Gabor Greif authored
llvm-svn: 101371
-
Gabor Greif authored
llvm-svn: 101368
-
Gabor Greif authored
of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101364
-
Chris Lattner authored
tokenfactor in between the load/store. This allows us to optimize test7 into: _test7: ## @test7 ## BB#0: ## %entry movl (%rdx), %eax ## kill: SIL<def> ESI<kill> movb %sil, 5(%rdi) ret instead of: _test7: ## @test7 ## BB#0: ## %entry movl 4(%esp), %ecx movl $-65281, %eax ## imm = 0xFFFFFFFFFFFF00FF andl 4(%ecx), %eax movzbl 8(%esp), %edx shll $8, %edx addl %eax, %edx movl 12(%esp), %eax movl (%eax), %eax movl %edx, 4(%ecx) ret llvm-svn: 101355
-