| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 55700
|
| |
|
|
|
|
| |
routines and move them into a separate file, ScheduleDAGEmit.cpp.
llvm-svn: 55699
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
when searching for redundant subregister dead/kill bits.
Previously it was common to see instructions marked like this:
"RET %EAX<imp-use,kill>, %AX<imp-use,kill>"
With this change, addRegisterKilled continues scanning after
finding the %EAX operand, so it proceeds to discover the
redundant %AX kill and eliminates it, producing this:
"RET %EAX<imp-use,kill>"
This currently has no effect on the generated code.
llvm-svn: 55698
|
| |
|
|
|
|
|
|
| |
doesNotAccessMemory, check doesNotAccessMemory
first, since otherwise functions may be
marked readonly rather than readnone.
llvm-svn: 55697
|
| |
|
|
|
|
|
|
|
|
|
| |
callgraph, when one member of a SCC calls another
then the analysis would drop to mod-ref because
there is (usually) no function info for the callee
yet; fix this. Teach the analysis about function
attributes, in particular the readonly attribute
(which requires being careful about globals).
llvm-svn: 55696
|
| |
|
|
|
|
| |
equivalence.
llvm-svn: 55694
|
| |
|
|
| |
llvm-svn: 55693
|
| |
|
|
| |
llvm-svn: 55692
|
| |
|
|
| |
llvm-svn: 55690
|
| |
|
|
|
|
|
|
|
| |
be folded. Instead, fail to fold the entire vector.
We could also return a vector with some elements folded and some not. If anyone
thinks that's a better approach, please speak up!
llvm-svn: 55689
|
| |
|
|
|
|
| |
case-sensitive filesystems.
llvm-svn: 55687
|
| |
|
|
| |
llvm-svn: 55685
|
| |
|
|
| |
llvm-svn: 55682
|
| |
|
|
| |
llvm-svn: 55680
|
| |
|
|
|
|
| |
makes it easier for targets to define its own fastisel class.
llvm-svn: 55679
|
| |
|
|
| |
llvm-svn: 55678
|
| |
|
|
| |
llvm-svn: 55676
|
| |
|
|
|
|
| |
if possible.
llvm-svn: 55674
|
| |
|
|
| |
llvm-svn: 55673
|
| |
|
|
| |
llvm-svn: 55668
|
| |
|
|
| |
llvm-svn: 55657
|
| |
|
|
| |
llvm-svn: 55656
|
| |
|
|
| |
llvm-svn: 55647
|
| |
|
|
| |
llvm-svn: 55646
|
| |
|
|
| |
llvm-svn: 55645
|
| |
|
|
| |
llvm-svn: 55643
|
| |
|
|
|
|
|
| |
even in FastISel mode in the case where FastISel successfully
selects all the instructions.
llvm-svn: 55641
|
| |
|
|
|
|
| |
# first commit to llvm, so whatch out :)
llvm-svn: 55631
|
| |
|
|
| |
llvm-svn: 55626
|
| |
|
|
| |
llvm-svn: 55625
|
| |
|
|
| |
llvm-svn: 55624
|
| |
|
|
|
|
| |
be const. Make corresponding changes.
llvm-svn: 55623
|
| |
|
|
|
|
|
|
|
|
|
| |
The first can update the SDNode in an SDValue
while the second is called with SDNode* and
returns a possibly updated SDNode*.
This patch has no intended functional impact,
but helps eliminating ugly temporary SDValues.
llvm-svn: 55608
|
| |
|
|
|
|
|
| |
(what matters is that it is added to the worklist),
it seems more logical to return it.
llvm-svn: 55606
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
attributes on functions, based on the result of
alias analysis. It's not hardwired to use
GlobalsModRef even though this is the only (AFAIK)
alias analysis that results in this pass actually
doing something. Enable as follows:
opt ... -globalsmodref-aa -markmodref ...
Advantages of this pass: (1) records the result
of globalsmodref in the bitcode, meaning it is
available for use by later passes (currently
the pass manager isn't smart enough to magically
make an advanced alias analysis available to all
later passes), which may expose more optimization
opportunities; (2) hopefully speeds up compilation
when code is optimized twice, for example when a
file is compiled to bitcode, then later LTO is done
on it: marking functions readonly/readnone when
producing the initial bitcode should speed up alias
analysis during LTO; (3) good for discovering that
globalsmodref doesn't work very well :)
Not currently turned on by default.
llvm-svn: 55604
|
| |
|
|
| |
llvm-svn: 55601
|
| |
|
|
| |
llvm-svn: 55599
|
| |
|
|
| |
llvm-svn: 55598
|
| |
|
|
| |
llvm-svn: 55597
|
| |
|
|
| |
llvm-svn: 55596
|
| |
|
|
| |
llvm-svn: 55594
|
| |
|
|
| |
llvm-svn: 55593
|
| |
|
|
| |
llvm-svn: 55591
|
| |
|
|
| |
llvm-svn: 55590
|
| |
|
|
| |
llvm-svn: 55588
|
| |
|
|
|
|
|
|
| |
instructions in CellSPU as "Expand" so that they won't be generated. I added a
"FIXME" so that this hack can be addressed and reverted once ISD::ROTR is
supported in the .td files.
llvm-svn: 55582
|
| |
|
|
|
|
| |
Dale, Could you please review this?
llvm-svn: 55581
|
| |
|
|
| |
llvm-svn: 55578
|
| |
|
|
| |
llvm-svn: 55577
|
| |
|
|
| |
llvm-svn: 55576
|