- Jan 04, 2009
-
-
Chris Lattner authored
of the pointer to the global. llvm-svn: 61630
-
Bill Wendling authored
llvm-svn: 61623
-
Bill Wendling authored
llvm::PATypeHolder::get() method when LLVM is self-hosted in Release mode. Before the parser changed, there was a definition of llvm::PAHolder::get() in llvmAsmParser.y. This was probably a bug that no-one noticed. Explicitly #include the Type.h file as a temporary fix for now. llvm-svn: 61620
-
- Jan 03, 2009
-
-
Dan Gohman authored
llvm-svn: 61613
-
Dan Gohman authored
llvm-svn: 61612
-
Dan Gohman authored
instructions to avoid copies, because TwoAddressInstructionPass also does this optimization. The scheduler's version didn't account for live-out values, which resulted in spurious commutes and missed opportunities. Now, TwoAddressInstructionPass handles all the opportunities, instead of just those that the scheduler missed. The result is usually the same, though there are occasional trivial differences resulting from the avoidance of spurious commutes. llvm-svn: 61611
-
Nick Lewycky authored
nocapture attributes to them. llvm-svn: 61610
-
Evan Cheng authored
llvm-svn: 61603
-
Evan Cheng authored
llvm-svn: 61602
-
Nick Lewycky authored
inline the only use of isNegative. Fixes warning reported by Mike Stump. llvm-svn: 61600
-
Scott Michel authored
- Remove custom lowering for BRCOND - Add remaining functionality for branches in SPUInstrInfo, such as branch condition reversal and load/store folding. Updated BrCond test to reflect branch reversal. llvm-svn: 61597
-
- Jan 02, 2009
-
-
Misha Brukman authored
llvm-svn: 61595
-
Misha Brukman authored
llvm-svn: 61594
-
Scott Michel authored
register copies a little easier to pick out from the output. - Fix bug 3192. llvm-svn: 61591
-
Nick Lewycky authored
pending a correct solution. llvm-svn: 61589
-
Daniel Dunbar authored
llvm-svn: 61585
-
Daniel Dunbar authored
llvm-svn: 61584
-
Duncan Sands authored
not have pointer type. In particular, it may be the condition argument for a select or a GEP index. While I was unable to construct a testcase for which some bits of the original pointer are captured due to one of these, it's very very close to being possible - so play safe and exclude these possibilities. llvm-svn: 61580
-
Duncan Sands authored
the argument to be stored to an alloca by tracking uses of the alloca. This occurs 4 times (out of 7121, 0.05%) in MultiSource/Applications, so may not be worth it. On the other hand, it is easy to do and fairly cheap. The functions it helps are: W_addcom and W_addlit in spiff; process_args (argv) in d (make_dparser); ercPixConcealIMB in JM/ldecod. llvm-svn: 61570
-
Duncan Sands authored
change. llvm-svn: 61569
-
Chris Lattner authored
llvm-svn: 61566
-
Chris Lattner authored
llvm-svn: 61564
-
Chris Lattner authored
llvm-svn: 61563
-
Chris Lattner authored
llvm-svn: 61561
-
Chris Lattner authored
and clean recursive descent parser. This change has a couple of ramifications: 1. The parser code is about 400 lines shorter (in what we maintain, not including what is autogenerated). 2. The code should be significantly faster than the old code because we don't have to work around bison's poor handling of datatypes with ctors/dtors. This also makes the code much more resistant to memory leaks. 3. We now get caret diagnostics from the .ll parser, woo. 4. The actual diagnostics emited from the parser are completely different so a bunch of testcases had to be updated. 5. I now disallow "%ty = type opaque %ty = type i32". There was no good reason to support this, it was just an accident of the old implementation. I have no reason to think that anyone is actually using this. 6. The syntax for sticking a global variable has changed to make it unambiguous. I don't think anyone is depending on this since only clang supports this and it is not solid yet, so I'm not worried about anything breaking. 7. This gets rid of the last use of bison, and along with it the .cvs files. I'll prune this from the makefiles as a subsequent commit. There are a few minor cleanups that can be done after this commit (suggestions welcome!) but this passes dejagnu testing and is ready for its time in the limelight. llvm-svn: 61558
-
Evan Cheng authored
Do not isel load folding bt instructions for pentium m, core, core2, and AMD processors. These are significantly slower than a load followed by a bt of a register. llvm-svn: 61557
-
Evan Cheng authored
llvm-svn: 61556
-
Evan Cheng authored
Use movaps / movd to extract vector element 0 even with sse4.1. It's still cheaper than pextrw especially if the value is in memory. llvm-svn: 61555
-
Nick Lewycky authored
functions that don't write can't leak a pointer except through the return value, so a void readonly function is implicitly nocapture. Test these, and add a test that verifies that f1 calling f2 with an otherwise dead pointer gets both of them marked nocapture. llvm-svn: 61552
-
- Jan 01, 2009
-
-
Duncan Sands authored
leading comments. llvm-svn: 61548
-
Duncan Sands authored
and BRCOND conditions. Reorder a few methods while there. llvm-svn: 61547
-
Duncan Sands authored
llvm-svn: 61545
-
Duncan Sands authored
promote from i1 all the way up to the canonical SetCC type. In order to discover an appropriate type to use, pass MVT::Other to getSetCCResultType. In order to be able to do this, change getSetCCResultType to take a type as an argument, not a value (this is also more logical). llvm-svn: 61542
-
Bill Wendling authored
llvm-svn: 61538
-
Bill Wendling authored
xor (or (icmp, icmp), true) -> and(icmp, icmp) This is possible because of De Morgan's law. llvm-svn: 61537
-
- Dec 31, 2008
-
-
Duncan Sands authored
calculating nocapture attributes. llvm-svn: 61535
-
Duncan Sands authored
llvm-svn: 61532
-
Duncan Sands authored
to work out (in a very simplistic way) which function arguments (pointer arguments only) are only dereferenced and so do not escape. Mark such arguments 'nocapture'. llvm-svn: 61525
-
Owen Anderson authored
llvm-svn: 61514
-
Chris Lattner authored
llvm-svn: 61513
-