- Sep 07, 2008
-
-
Evan Cheng authored
- Add a AnalyzeCallResult specialized for calls which produce a single value. This is used by fastisel. llvm-svn: 55879
-
Evan Cheng authored
llvm-svn: 55878
-
Evan Cheng authored
llvm-svn: 55877
-
Evan Cheng authored
llvm-svn: 55876
-
Evan Cheng authored
def : Pat<(i8 (trunc GR32:$src)), (i8 (EXTRACT_SUBREG (MOV32to32_ GR32:$src), x86_subreg_8bit))> llvm-svn: 55875
-
- Sep 06, 2008
-
-
Nuno Lopes authored
this pass doesnt seem to be used, but still it's now a little more correct llvm-svn: 55873
-
Duncan Sands authored
call (thus changing the call site) it didn't inform the callgraph about this. But the call site does matter - as shown by the testcase, the callgraph become invalid after the inliner ran (with an edge between two functions simply missing), resulting in wrong deductions by GlobalsModRef. llvm-svn: 55872
-
Owen Anderson authored
llvm-svn: 55868
-
Owen Anderson authored
llvm-svn: 55867
-
Dale Johannesen authored
llvm-svn: 55866
-
Owen Anderson authored
llvm-svn: 55865
-
Eli Friedman authored
i32>. This is a little messy, but it works. We should really get rid of the intrinsics, though, since they map perfectly well to standard LLVM instructions. llvm-svn: 55864
-
Dan Gohman authored
out of ScheduleDAGEmit.cpp and into SelectionDAGISel.cpp. This allows it to be run exactly once per function, even if multiple SelectionDAG iterations happen in the entry block, as may happen with FastISel. llvm-svn: 55863
-
- Sep 05, 2008
-
-
Devang Patel authored
llvm-svn: 55861
-
Dale Johannesen authored
that they read the rounding mode. This is conservatively correct, which they weren't before. We can do more optimization on these if we actually model the rounding mode. llvm-svn: 55860
-
Duncan Sands authored
because it does not maintain a correct list of callsites. I discovered (see following commit) that the inliner will create a wrong callgraph if it is fed a callgraph with correct edges but incorrect callsites. These were created by Prune-EH, and while it wasn't done via removeCallEdgeTo, it could have been done via removeCallEdgeTo, which is an accident waiting to happen. Use removeCallEdgeFor instead. llvm-svn: 55859
-
Duncan Sands authored
readonly. llvm-svn: 55858
-
Dan Gohman authored
llvm-svn: 55857
-
Dale Johannesen authored
llvm-svn: 55856
-
Dan Gohman authored
llvm-svn: 55855
-
Evan Cheng authored
llvm-svn: 55854
-
Owen Anderson authored
llvm-svn: 55853
-
Evan Cheng authored
llvm-svn: 55849
-
Dan Gohman authored
llvm-svn: 55846
-
Dale Johannesen authored
llvm-svn: 55845
-
Dan Gohman authored
llvm-svn: 55844
-
Dan Gohman authored
llvm-svn: 55843
-
Dan Gohman authored
approach here. llvm-svn: 55842
-
Evan Cheng authored
llvm-svn: 55840
-
Evan Cheng authored
llvm-svn: 55838
-
Duncan Sands authored
edges one by one by hand. llvm-svn: 55836
-
Duncan Sands authored
llvm-svn: 55835
-
Duncan Sands authored
llvm-svn: 55834
-
Duncan Sands authored
it modifies a functions attributes. llvm-svn: 55831
-
Duncan Sands authored
elsewhere due to a missing pattern for v2f64 = sint_to_fp v2i32. That is PR2687. llvm-svn: 55828
-
Dan Gohman authored
llvm-svn: 55824
-
Dale Johannesen authored
but less accurate (non-IEEE) code sequences for certain math library functions. Add the first of several such expansions. Don't worry, if you don't turn it on it won't affect you. llvm-svn: 55823
-
Dan Gohman authored
expanding its operands. llvm-svn: 55820
-
Dan Gohman authored
to check the result of getRegForValue before using it, and to check for illegal operand types. llvm-svn: 55819
-
Dan Gohman authored
llvm-svn: 55818
-