- Jun 27, 2009
-
-
Dan Gohman authored
of a team of individual allocations and a team of std::maps. llvm-svn: 74393
-
Dan Gohman authored
llvm-svn: 74392
-
Dan Gohman authored
llvm-svn: 74391
-
Dan Gohman authored
llvm-svn: 74389
-
Anton Korobeynikov authored
llvm-svn: 74385
-
Anton Korobeynikov authored
llvm-svn: 74384
-
Douglas Gregor authored
llvm-svn: 74382
-
Chris Lattner authored
target-specific operand printing functionality. Yay. llvm-svn: 74379
-
Chris Lattner authored
llvm-svn: 74378
-
Chris Lattner authored
llvm-svn: 74377
-
Dan Gohman authored
inserted to replace that value must dominate all of of the basic blocks associated with the uses of the value in the PHI, not just one of them. llvm-svn: 74376
-
Chris Lattner authored
llvm-svn: 74375
-
Chris Lattner authored
a base register. We just ignore it for now. llvm-svn: 74374
-
Chris Lattner authored
globals. This implements remat-constant.ll even without aggressive-remat. llvm-svn: 74373
-
Chris Lattner authored
implementation primarily differs from the former in that the asmprinter doesn't make a zillion decisions about whether or not something will be RIP relative or not. Instead, those decisions are made by isel lowering and propagated through to the asm printer. To achieve this, we: 1. Represent RIP relative addresses by setting the base of the X86 addr mode to X86::RIP. 2. When ISel Lowering decides that it is safe to use RIP, it lowers to X86ISD::WrapperRIP. When it is unsafe to use RIP, it lowers to X86ISD::Wrapper as before. 3. This removes isRIPRel from X86ISelAddressMode, representing it with a basereg of RIP instead. 4. The addressing mode matching logic in isel is greatly simplified. 5. The asmprinter is greatly simplified, notably the "NotRIPRel" predicate passed through various printoperand routines is gone now. 6. The various symbol printing routines in asmprinter now no longer infer when to emit (%rip), they just print the symbol. I think this is a big improvement over the previous situation. It does have two small caveats though: 1. I implemented a horrible "no-rip" modifier for the inline asm "P" constraint modifier. This is a short term hack, there is a much better, but more involved, solution. 2. I had to xfail an -aggressive-remat testcase because it isn't handling the use of RIP in the constant-pool reading instruction. This specific test is easy to fix without -aggressive-remat, which I intend to do next. llvm-svn: 74372
-
Chris Lattner authored
llvm-svn: 74371
-
Chris Lattner authored
by Evan. llvm-svn: 74370
-
Evan Cheng authored
llvm-svn: 74368
-
Chris Lattner authored
llvm-svn: 74367
-
Chris Lattner authored
llvm-svn: 74366
-
Chris Lattner authored
llvm-svn: 74364
-
David Goodwin authored
llvm-svn: 74357
-
David Goodwin authored
When possible, use "mvn ra, rb" instead of "eor ra, rb, -1" because mvn has a narrow version and eor(i) does not. llvm-svn: 74355
-
Dan Gohman authored
llvm-svn: 74353
-
Dan Gohman authored
This helps it avoid reusing an instruction that doesn't dominate all of the users, in cases where the original instruction was inserted before all of the users were known. This may result in redundant expansions of sub-expressions that depend on loop-unpredictable values in some cases, however this isn't very common, and it primarily impacts IndVarSimplify, so GVN can be expected to clean these up. This eliminates the need for IndVarSimplify's FixUsesBeforeDefs, which fixes several bugs. llvm-svn: 74352
-
Devang Patel authored
llvm-svn: 74351
-
David Greene authored
Add feature flags for AVX and FMA and fix some SSE4A feature flag initialization problems. llvm-svn: 74350
-
David Goodwin authored
llvm-svn: 74345
-
Dan Gohman authored
nesting order of nested AddRec expressions to skip the transformation if it would introduce an AddRec with operands not loop-invariant with respect to its loop. llvm-svn: 74343
-
Daniel Dunbar authored
instead of skipping). llvm-svn: 74341
-
Bob Wilson authored
llvm-svn: 74340
-
Dan Gohman authored
are loop invariant, not just the start operand. llvm-svn: 74338
-
Chris Lattner authored
llvm-svn: 74337
-
Evan Cheng authored
Add x86 support for 'n' inline asm modifier. This will be handled target independently as part of MC work. llvm-svn: 74336
-
- Jun 26, 2009
-
-
Chris Lattner authored
llvm-svn: 74334
-
Bob Wilson authored
llvm-svn: 74333
-
Owen Anderson authored
llvm-svn: 74332
-
Owen Anderson authored
llvm-svn: 74330
-
Anton Korobeynikov authored
Step 1: ARMInstructionInfo => {ARM,Thumb}InstructionInfo llvm-svn: 74329
-
Chris Lattner authored
llvm-svn: 74328
-