summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [FastISel][X86] Add support for cvttss2si/cvttsd2si intrinsics.Juergen Ributzka2014-06-132-0/+120
| | | | | | | | This adds support for the cvttss2si/cvttsd2si intrinsics. Preceding insertelement instructions are folded into the conversion instruction (if possible). llvm-svn: 210870
* R600: Move AMDGPUInstrInfo from AMDGPUTargetMachine into AMDGPUSubtargetTom Stellard2014-06-1323-43/+54
| | | | llvm-svn: 210869
* R600: Drop use of cached TargetMachine in R600InstrInfo.cppTom Stellard2014-06-131-1/+2
| | | | llvm-svn: 210868
* prepare-builtins: Use std:: prefix for error_codeTom Stellard2014-06-131-2/+11
| | | | | | This fixes the build with with newer LLVM. llvm-svn: 210867
* Remove all uses of 'using std::error_code' from headers.Rafael Espindola2014-06-1322-65/+68
| | | | llvm-svn: 210866
* R600: Drop use of cached TargetMachine in AMDGPUInstrInfo.cppTom Stellard2014-06-131-1/+1
| | | | llvm-svn: 210865
* Added the ability to save core files:Greg Clayton2014-06-137-8/+517
| | | | | | | | | | | (lldb) file /bin/ls (lldb) b malloc (lldb) run (lldb) process save-core /tmp/ls.core Each ObjectFile plug-in now has the option to save core files by registering a new static callback. llvm-svn: 210864
* [FastISel][X86] - Add branch weightsJuergen Ributzka2014-06-133-5/+41
| | | | | | | Add branch weights to branch instructions, so that the following passes can optimize based on it (i.e. basic block ordering). llvm-svn: 210863
* Move ARMSelectionDAGInfo from the TargetMachine to the subtarget.Eric Christopher2014-06-134-7/+7
| | | | llvm-svn: 210862
* Move to a private function to initialize subtarget dependenciesEric Christopher2014-06-134-76/+87
| | | | | | | | so we can use initializer lists for the ARMSubtarget and then use this to initialize a moved DataLayout on the subtarget from the TargetMachine. llvm-svn: 210861
* [DWARF parser] Fix broken address ranges construction.Alexey Samsonov2014-06-125-60/+86
| | | | | | | | | | | | | | | | | Previous algorithm for constructing [Address ranges]->[Compile Units] mapping was wrong. It somewhat relied on the assumption that address ranges for different compile units may not overlap. It is not so. For example, two compile units may contain the definition of the same linkonce_odr function. These definitions will be merged at link-time, resulting in equivalent .debug_ranges entries for both these units Instead of sorting and merging original address ranges (from .debug_ranges and .debug_aranges), implement a different approach: save endpoints of all ranges, and then use a sweep-line approach to construct the desired mapping. If we find that certain address maps to several compilation units, we just pick any of them. llvm-svn: 210860
* Have ARMSelectionDAGInfo take a DataLayout as it's argument as theEric Christopher2014-06-123-14/+11
| | | | | | | DAG has access to the subtarget and TargetSelectionDAGInfo only needs a DataLayout. llvm-svn: 210859
* [FastISel][X86] Add MachineMemOperand to load/store instructions.Juergen Ributzka2014-06-124-39/+127
| | | | | | | | This commit adds MachineMemOperands to load and store instructions. This allows the peephole optimizer to fold load instructions. Unfortunatelly the peephole optimizer currently doesn't run at -O0. llvm-svn: 210858
* Revert "fixes duplicate header installation"David Fang2014-06-121-1/+5
| | | | | | This reverts commit 0bd40d6c3da6719fecf77038673d453ff1eab25b. llvm-svn: 210857
* Recover from missing 'typename' in sizeof(T::InnerType)Reid Kleckner2014-06-127-41/+165
| | | | | | | | | | | | | | | | | | | | | | Summary: 'sizeof' is a UnaryExprOrTypeTrait, and it can contain either a type or an expression. This change threads a RecoveryTSI parameter through the layers between TransformUnaryExprOrTypeTrait the point at which we look up the type. If lookup finds a single type result after instantiation, we now build TypeSourceInfo for it just like a normal transformation would. This fixes the last error in the hello world ATL app that I've been working with, and it now links and runs with clang. Please try it and file bugs! Reviewers: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D4108 llvm-svn: 210855
* Move the PPCSelectionDAGInfo off the TargetMachine and onto theEric Christopher2014-06-124-5/+6
| | | | | | subtarget. llvm-svn: 210854
* Make PPCSelectionDAGInfo take a DataLayout instead of a TargetMachineEric Christopher2014-06-123-7/+6
| | | | | | since that's all it needs. llvm-svn: 210853
* Move PPCTargetLowering off of the TargetMachine and onto the subtarget.Eric Christopher2014-06-125-8/+11
| | | | llvm-svn: 210852
* Remove stale part of comment.Eli Bendersky2014-06-121-3/+1
| | | | llvm-svn: 210851
* Check the access of operator delete from the destructor contextReid Kleckner2014-06-122-6/+50
| | | | | | | | | | | | Previously we would do the access check from the context of MarkVTableUsed. Also update this test to C++11, since that is typically used with the MS C++ ABI. Fixes PR20005. llvm-svn: 210850
* Remove an extraneous this-> to access the subtarget.Eric Christopher2014-06-121-1/+1
| | | | llvm-svn: 210849
* Rename PPCSubTarget to Subtarget in PPCTargetLowering for consistency.Eric Christopher2014-06-122-126/+124
| | | | | | Also remove an extra local subtarget in the initialization functions. llvm-svn: 210848
* Fix the polly build.Rafael Espindola2014-06-121-1/+1
| | | | llvm-svn: 210847
* Fix the scheduler's MaxObservedStall computation.Andrew Trick2014-06-121-2/+6
| | | | | | | WenHan Gu pointed out this bug that results in an assert not being effective in some cases. llvm-svn: 210846
* Move PPCJITInfo off of the TargetMachine and onto the subtarget.Eric Christopher2014-06-126-30/+33
| | | | | | | Needed to migrate a few functions around to avoid circular header dependencies. llvm-svn: 210845
* Remove the use of TargetMachine from PPCJITInfo and replace withEric Christopher2014-06-123-6/+6
| | | | | | | the subtarget. Also remove unnecessary argument to the constructor at the same time, we already have access via the subtarget. llvm-svn: 210844
* Fix the build of KillTheDoctor.Rafael Espindola2014-06-121-9/+10
| | | | llvm-svn: 210843
* [modules] The LLVM C API does not require C++!Richard Smith2014-06-121-1/+0
| | | | llvm-svn: 210842
* The Clang C API does not require C++. Thanks to Jordan Rose for pointing out ↵Richard Smith2014-06-121-1/+0
| | | | | | this error! llvm-svn: 210841
* Prefix error_code with std.Rafael Espindola2014-06-126-48/+45
| | | | llvm-svn: 210840
* Move PPCInstrInfo off of the target machine and onto the subtarget.Eric Christopher2014-06-124-7/+11
| | | | llvm-svn: 210839
* Quick build fix.Rafael Espindola2014-06-126-0/+6
| | | | llvm-svn: 210838
* Try to fix the windows build.Rafael Espindola2014-06-121-1/+1
| | | | llvm-svn: 210837
* Remove TargetMachine from PPCInstrInfo and all dependencies andEric Christopher2014-06-125-27/+29
| | | | | | replace with the current subtarget. llvm-svn: 210836
* Don't use 'using std::error_code' in include/llvm.Rafael Espindola2014-06-12107-556/+685
| | | | | | This should make sure that most new uses use the std prefix. llvm-svn: 210835
* s/pr2007/20007/ in a testReid Kleckner2014-06-121-6/+6
| | | | llvm-svn: 210834
* Move test for r210734 to Feature/aliases.ll.Bob Wilson2014-06-122-4/+6
| | | | llvm-svn: 210833
* Prefix another use of error_code.Rafael Espindola2014-06-121-1/+1
| | | | llvm-svn: 210832
* More prefixing of error_code.Rafael Espindola2014-06-1221-82/+84
| | | | llvm-svn: 210831
* Delete trailing whitespace.Matt Arsenault2014-06-121-1/+1
| | | | | | Hopefully this forces cmake to re-run. llvm-svn: 210830
* Update test case to use "not" instead of "XFAIL".Juergen Ributzka2014-06-121-2/+1
| | | | llvm-svn: 210829
* GVN: Enable value forwarding for callocDuncan P. N. Exon Smith2014-06-122-0/+41
| | | | | | | | | | | | | | | | | | | | | Enable value forwarding for loads from `calloc()` without an intervening store. This change extends GVN to handle the following case: %1 = tail call noalias i8* @calloc(i64 1, i64 4) %2 = bitcast i8* %1 to i32* ; This load is trivially constant zero %3 = load i32* %2, align 4 This is analogous to the handling for `malloc()` in the same places. `malloc()` returns `undef`; `calloc()` returns a zero value. Note that it is correct to return zero even for out of bounds GEPs since the result of such a GEP would be undefined. Patch by Philip Reames! llvm-svn: 210828
* R600: Mostly remove remaining AMDIL intrinsics.Matt Arsenault2014-06-129-250/+54
| | | | | | | | | Delete all unused ones, and add new AMDGPU named intrinsics for the ones that are. Handle the old AMDIL names for comptability (although remove their GCCBuiltin names) and add tests since there weren't any for these before. llvm-svn: 210827
* Tweak documentation.Nico Weber2014-06-122-6/+9
| | | | | | | | | | 1. Having "get started", "get involved", and "hacking" makes it hard to find how to send patches, so add a link from "get involved" to "hacking". 2. Remove an almost 5 year old note on the test running meachanism changing soon. 3. Let "hacking" link to the LLVM developer policy. llvm-svn: 210826
* Remove unused include which breaks build after r210803Jeroen Ketema2014-06-121-1/+0
| | | | | | Tested with llvm 3.4 and trunk. llvm-svn: 210825
* Move DataLayout from the PPCTargetMachine to the subtarget.Eric Christopher2014-06-124-40/+46
| | | | llvm-svn: 210824
* Objective-C ARC. Blocks that strongly capture themselvesFariborz Jahanian2014-06-122-5/+36
| | | | | | | | | | | to call themselves will get the warning: "Capturing <itself> strongly in this block is likely to lead to a retain cycle". Cut down on the amount of noise by noticing that user at some point sets the captured variable to null in order to release it (and break the cycle). // rdar://16944538 llvm-svn: 210823
* Move PPCFrameLowering into PPCSubtarget from PPCTargetMachine. UseEric Christopher2014-06-126-196/+211
| | | | | | | | the initializeSubtargetDependencies code to obtain an initialized subtarget and migrate a couple of subtarget using functions to the .cpp file to avoid circular includes. llvm-svn: 210822
* Fix up extra whitespace from previous commit.Todd Fiala2014-06-122-5/+5
| | | | llvm-svn: 210821
* Refer to error_code with an std prefix.Rafael Espindola2014-06-123-16/+17
| | | | llvm-svn: 210820
OpenPOWER on IntegriCloud