summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Delete an unused variable.Dan Gohman2008-09-081-1/+0
| | | | llvm-svn: 55915
* xfailDevang Patel2008-09-081-0/+1
| | | | llvm-svn: 55914
* Remove OptimizeIVType()Devang Patel2008-09-081-206/+0
| | | | llvm-svn: 55913
* Didn't mean to commit this change to how theDuncan Sands2008-09-081-8/+4
| | | | | | callgraph is printed. llvm-svn: 55912
* Avoid redefinition and nnbreak windows build.Evan Cheng2008-09-081-16/+16
| | | | llvm-svn: 55911
* Unbreak and fix indentationAnton Korobeynikov2008-09-081-37/+33
| | | | llvm-svn: 55904
* Testcase for 64-bit lowering of eh_return & unwind_initAnton Korobeynikov2008-09-081-0/+17
| | | | llvm-svn: 55903
* Add test for checking proper lowering of eh_return & unwind init intrinsics ↵Anton Korobeynikov2008-09-081-0/+17
| | | | | | on 32bit x86 targets llvm-svn: 55902
* Drop unused variableAnton Korobeynikov2008-09-081-1/+0
| | | | llvm-svn: 55901
* We do support EH on x86-64!Anton Korobeynikov2008-09-081-2/+1
| | | | llvm-svn: 55900
* First draft of EH support on x86/64-linuxAnton Korobeynikov2008-09-084-34/+62
| | | | llvm-svn: 55899
* Implement FRAME_TO_ARGS_OFFSET for x86-64Anton Korobeynikov2008-09-081-11/+7
| | | | llvm-svn: 55898
* Add testcase from bug 2770.Rafael Espindola2008-09-081-0/+14
| | | | llvm-svn: 55897
* Update the callgraph correctly.Duncan Sands2008-09-081-1/+4
| | | | llvm-svn: 55896
* Update the callgraph correctly in ArgumentPromotion.Duncan Sands2008-09-083-0/+44
| | | | llvm-svn: 55895
* Reapply 55859. This doesn't change anything asDuncan Sands2008-09-084-33/+20
| | | | | | | long as the callgraph is correct. It checks for wrong callgraphs more strictly. llvm-svn: 55894
* Correctly handle physical register inputs. They are not explicit input ↵Evan Cheng2008-09-082-9/+41
| | | | | | operands in the resulting machine instrs. llvm-svn: 55893
* Add fast isel physical register definition support.Evan Cheng2008-09-081-7/+64
| | | | llvm-svn: 55892
* Add support to extend call operands when needed. Enable x86 fastisel call ↵Evan Cheng2008-09-081-24/+33
| | | | | | support. llvm-svn: 55891
* Revert my previous change -- the subtraction of two constants was a no-opBill Wendling2008-09-081-1/+1
| | | | | | | | | before. This is taken care of in the selection DAG pass. In my opinion, this should be in one place or the other. I.e., it should probably be removed from the DAG combiner (along with the other arithmetic transformations on constants that are essentially no-ops). llvm-svn: 55889
* Support C++'s declaration-statement.Argyrios Kyrtzidis2008-09-071-1/+2
| | | | llvm-svn: 55888
* rename libclangSEMA to libclangSemaNico Weber2008-09-072-2/+2
| | | | llvm-svn: 55887
* ConvertBill Wendling2008-09-071-1/+1
| | | | | | | | // fold (sub c1, c2) -> c1-c2 from a no-op into an actual transformation. llvm-svn: 55886
* Clean up CSS validator errors: 'Property align doesn't exist : center'Bill Wendling2008-09-071-3/+3
| | | | llvm-svn: 55885
* Formatting changes. to make the information cleaner.Bill Wendling2008-09-071-23/+24
| | | | llvm-svn: 55884
* Correct a comment and strip trailing whitespace.Duncan Sands2008-09-071-25/+25
| | | | llvm-svn: 55883
* Initial fastisel call support for C, Fast, and X86_FastCall calling ↵Evan Cheng2008-09-071-42/+308
| | | | | | | | conventions. It's meant to handle "simple" calls, i.e. no byval, structret, etc. It doesn't support multi-result returns either. Not yet turned on, it needs to support sext / zext of arguments and result. llvm-svn: 55882
* Some code clean up.Evan Cheng2008-09-071-26/+21
| | | | llvm-svn: 55881
* Indentation.Evan Cheng2008-09-071-2/+2
| | | | llvm-svn: 55880
* - Doh. Pass vector by value is bad.Evan Cheng2008-09-072-2/+15
| | | | | | - Add a AnalyzeCallResult specialized for calls which produce a single value. This is used by fastisel. llvm-svn: 55879
* Eliminate a compile time warning.Evan Cheng2008-09-071-1/+1
| | | | llvm-svn: 55878
* Handle x86 truncate to i8 with target hook for now.Evan Cheng2008-09-072-0/+50
| | | | llvm-svn: 55877
* Fix indentation of generated code.Evan Cheng2008-09-071-1/+1
| | | | llvm-svn: 55876
* Ignore multi-instruction patterns. e.g.Evan Cheng2008-09-071-0/+14
| | | | | | | def : Pat<(i8 (trunc GR32:$src)), (i8 (EXTRACT_SUBREG (MOV32to32_ GR32:$src), x86_subreg_8bit))> llvm-svn: 55875
* fix crash when the malloc/free function is defined or is a declaration with ↵Nuno Lopes2008-09-061-4/+2
| | | | | | | | 0 parameters. this pass doesnt seem to be used, but still it's now a little more correct llvm-svn: 55873
* When PruneEH turned an invoke into an ordinaryDuncan Sands2008-09-064-1/+1463
| | | | | | | | | | | | 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
* skip test if llvm-gcc is requires but not found on the path.Nuno Lopes2008-09-061-0/+14
| | | | | | someone with llvm-gcc installed please test if the Codegen/function-attributes.c test isn't skip in your system. thanks. llvm-svn: 55871
* Key LLVM types for TagDecl's off of the clang Type, since there is nowDaniel Dunbar2008-09-062-15/+27
| | | | | | a many-to-one relationship between TagDecl's and types. llvm-svn: 55870
* Per PR2773, define __USER_LABEL_PREFIX__ for x86-32 Linux and Windows.Eli Friedman2008-09-061-0/+2
| | | | | | | | | | If you're on some other platform, the correct definition for this macro would be appreciated; to find the correct definition, just run the following command: echo | gcc -dM -E - | grep USER_LABEL_PREFIX llvm-svn: 55869
* Fix constant pool loads, and remove broken versions of addConstantPoolReference.Owen Anderson2008-09-065-45/+10
| | | | llvm-svn: 55868
* Fix the X86 addConstantPoolReference, which had the operands in the wrong order.Owen Anderson2008-09-061-1/+2
| | | | llvm-svn: 55867
* Next limited float precision expansion (log2 12 bits)Dale Johannesen2008-09-051-3/+43
| | | | llvm-svn: 55866
* Revert r55859. This is breaking the build in the abscence of its companion ↵Owen Anderson2008-09-055-16/+41
| | | | | | commit. llvm-svn: 55865
* Fix for PR2687: Add patterns to match sint_to_fp and fp_to_sint for <2 x Eli Friedman2008-09-052-0/+19
| | | | | | | | | 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
* Move the code that inserts copies for function livein registersDan Gohman2008-09-052-109/+113
| | | | | | | | | 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
* More type checking for blocks. Still incomplete (will hopefully finish up ↵Steve Naroff2008-09-057-31/+217
| | | | | | this weekend). llvm-svn: 55862
* Remove unused map.Devang Patel2008-09-051-1/+0
| | | | llvm-svn: 55861
* Mark math lib intrinsics readonly, on the groundsDale Johannesen2008-09-051-1/+4
| | | | | | | | | 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
* Delete the removeCallEdgeTo callgraph method,Duncan Sands2008-09-054-29/+12
| | | | | | | | | | | | | | | 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
* Prevent our own passes from promoting this toDuncan Sands2008-09-051-1/+1
| | | | | | readonly. llvm-svn: 55858
OpenPOWER on IntegriCloud