summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Avoid a gcc warning.Rafael Espindola2011-05-101-1/+2
| | | | llvm-svn: 131161
* Fix cmake build.Rafael Espindola2011-05-101-0/+1
| | | | llvm-svn: 131160
* Revert r131155 for now. It makes VMCore depend on Analysis and TransformsNick Lewycky2011-05-103-655/+150
| | | | | | headers. llvm-svn: 131159
* Initialize moveTypeModule.Rafael Espindola2011-05-101-2/+2
| | | | llvm-svn: 131157
* Disable my little CopyToReg argument hack with fast-isel. ↵Eli Friedman2011-05-101-2/+3
| | | | | | rdar://problem/9413587 . llvm-svn: 131156
* Add support for plugins add passes to the default set of passes. The ↵David Chisnall2011-05-103-150/+655
| | | | | | | | | | | | | | | standard set of passes used by front ends can now be modified by LLVM plugins, without needing to modify any front ends. Still to do: - Allow replacing / removing passes (infrastructure there, just needs an infrastructure exposed) - Defining sets of passes to be added or removed as a group - Extending the support to allow user-defined groups of optimisations - Allow plugins to be specified for loading automatically (e.g. from plugins.conf or some similar mechanism) Reviewed by Nick Lewycky. llvm-svn: 131155
* Correctly walk through nested and adjacent CALLSEQ_START nodes. NoStuart Hastings2011-05-101-1/+2
| | | | | | | test case; I've only seen this on a release branch, and I can't get it to reproduce on trunk. rdar://problem/7662569 llvm-svn: 131152
* Produce a __debug_frame section on darwin ARM when appropriate.Rafael Espindola2011-05-105-75/+8
| | | | llvm-svn: 131151
* On MachO, unlike ELF, there should be no relocation to produce the CIE pointer.Rafael Espindola2011-05-102-8/+55
| | | | llvm-svn: 131149
* Rename DwarfRequiresRelocationForStmtList toRafael Espindola2011-05-104-8/+8
| | | | | | DwarfRequiresRelocationForSectionOffset as this is not specific to StmtList. llvm-svn: 131148
* The EH symbols are only needed in eh_frame, not debug_frame.Rafael Espindola2011-05-102-2/+20
| | | | llvm-svn: 131146
* Use .cfi_sections to put the unwind info in .debug_frame when possible. WithRafael Espindola2011-05-105-10/+45
| | | | | | | | | this clang will use .debug_frame in, for example, clang -g -c -m32 test.c This matches gcc's behaviour. It looks like .debug_frame is a bit bigger than .eh_frame, but has the big advantage of not being allocated. llvm-svn: 131140
* Refactor lock versions of binary operators to be a little lessEric Christopher2011-05-101-73/+83
| | | | | | cut and paste. llvm-svn: 131139
* First cut at getting debugging support for ARM/MC/ELF/.oJason W Kim2011-05-101-1/+0
| | | | | | | DWARF stuff also gets fixed up by ELFARMAsmBackend::ApplyFixup(), but the offset is not guaranteed to be mod 4 == 0 as in text/data. llvm-svn: 131137
* Downgrade a tablegen warning to an error.Jakob Stoklund Olesen2011-05-101-3/+2
| | | | | | | Ambiguous sub-register index compositions are OK as long as the backend writer knows what he is doing. llvm-svn: 131134
* Fix PR9883. Make sure all caches are invalidated when a live range is repaired.Jakob Stoklund Olesen2011-05-104-4/+8
| | | | | | | | The previous invalidation missed the alias interference caches. Also add a stats counter for the number of repaired ranges. llvm-svn: 131133
* In a debug_frame the cfi offset is to the start of the debug_frame section!Rafael Espindola2011-05-102-9/+9
| | | | llvm-svn: 131129
* PTX: add test cases for cvt, fneg, and selpJustin Holewinski2011-05-103-0/+274
| | | | | | Patch by Dan Bailey llvm-svn: 131128
* Add CFIStartSections to the asm printer. Add an assert that at leastRafael Espindola2011-05-102-0/+20
| | | | | | one of the sections is created. llvm-svn: 131124
* PTX: add PTX 2.3 setting in PTX sub-target.Justin Holewinski2011-05-102-0/+4
| | | | | | Patch by Wei-Ren Chen llvm-svn: 131123
* Add support for producing .deubg_frame sections.Rafael Espindola2011-05-105-47/+111
| | | | llvm-svn: 131121
* Small cleanups.Rafael Espindola2011-05-101-8/+5
| | | | llvm-svn: 131120
* Factor some code into a new EmitFrames method.Rafael Espindola2011-05-105-6/+14
| | | | llvm-svn: 131119
* Remove unused argument.Rafael Espindola2011-05-101-12/+4
| | | | llvm-svn: 131118
* Parsing and plumbing for .cfi_sections.Rafael Espindola2011-05-103-1/+47
| | | | llvm-svn: 131117
* Preserve line number information.Devang Patel2011-05-101-0/+1
| | | | llvm-svn: 131112
* Do not ignore InlinedAt while walking up scope chain to find subprogram node. Devang Patel2011-05-091-1/+8
| | | | llvm-svn: 131106
* Tidy up. 80-column and whitespace.Jim Grosbach2011-05-093-72/+73
| | | | llvm-svn: 131094
* Look through struct wrapped types for inline asm statments.Eric Christopher2011-05-092-0/+12
| | | | | | Patch by Evan Cheng. llvm-svn: 131093
* Change a few std::maps to DenseMaps.Dan Gohman2011-05-092-7/+7
| | | | llvm-svn: 131088
* Fix td file comments for Mips.Eric Christopher2011-05-093-3/+7
| | | | | | Patch by Liu <proljc@gmail.com>! llvm-svn: 131086
* Fixed MC encoding for index_align for VLD1/VST1 (single element from one ↵Mon P Wang2011-05-095-2/+61
| | | | | | lane) for size 32 llvm-svn: 131085
* Indent properly, no functionality change.Duncan Sands2011-05-091-12/+12
| | | | llvm-svn: 131082
* Eliminate an unused line to fix a warning.NAKAMURA Takumi2011-05-081-1/+0
| | | | llvm-svn: 131078
* Remove an assertion to fix PR9872.Jakob Stoklund Olesen2011-05-082-1/+6
| | | | | | | | | | | | | | | | | | | | It can happen that a live debug variable is the last use of a sub-register, and the register allocator will pick a larger register class for the virtual register. If the allocated register doesn't support the sub-register index, just use %noreg for the debug variables instead of asserting. In PR9872, a debug variable ends up in the sub_8bit_hi part of a GR32_ABCD register. The register is split and one part is inflated to GR32 and assigned %ESI because there are no more normal uses of sub_8bit_hi. Since %ESI doesn't have that sub-register, substPhysReg asserted. Now it will simply insert a %noreg instead, and the debug variable will be marked unavailable in that range. We don't currently have a way of saying: !"value" is in bits 8-15 of %ESI, I don't know if DWARF even supports that. llvm-svn: 131073
* X86: Add a bunch of peeps for add and sub of SETB.Benjamin Kramer2011-05-083-4/+109
| | | | | | | | | | | | | | | | "b + ((a < b) ? 1 : 0)" compiles into cmpl %esi, %edi adcl $0, %esi instead of cmpl %esi, %edi sbbl %eax, %eax andl $1, %eax addl %esi, %eax This saves a register, a false dependency on %eax (Intel's CPUs still don't ignore it) and it's shorter. llvm-svn: 131070
* Don't force relaxation of AdvanceLoc instructions on OS X. gdb is happy withRafael Espindola2011-05-083-15/+7
| | | | | | | the smaller encoding and this cuts 270336 bytes from a release version of clang and 1246272 bytes from a debug build. llvm-svn: 131067
* PR9869: Add explicit destructor declarations to Operator subclasses, to allowEli Friedman2011-05-081-8/+26
| | | | | | compiling Operator.h with gcc 4.6 in C++0x mode. llvm-svn: 131062
* Eliminate the ARM sub-register indexes that are not needed by the sources.Jakob Stoklund Olesen2011-05-071-33/+6
| | | | | | | Tablegen will invent its own names for these indexes, and the register file is a bit simpler. llvm-svn: 131059
* Teach TableGen to automatically generate missing SubRegIndex instances.Jakob Stoklund Olesen2011-05-073-22/+47
| | | | | | | The RegisterInfo.td file should only specify the indexes that sources need to refer to. The rest is inferred. llvm-svn: 131058
* Fix comments per Duncan's review.Eli Friedman2011-05-071-3/+3
| | | | llvm-svn: 131055
* The comparision "max(x,y)==x" is equivalent to "x>=y". Since the max isDuncan Sands2011-05-072-10/+92
| | | | | | | often expressed as "x >= y ? x : y", there is a good chance we can extract the existing "x >= y" from it and use that as a replacement for "max(x,y)==x". llvm-svn: 131049
* Fix the non-MC encoding of pkhbt and pkhtb.Eric Christopher2011-05-071-0/+6
| | | | | | Patch by Stephen Hines. llvm-svn: 131045
* Revert ExecutionEngine patches, they either failed to build or broke unit tests.Jakob Stoklund Olesen2011-05-0711-59/+176
| | | | | | Please ensure the build is clean and tests are passing when recommitting. llvm-svn: 131044
* Switch Darwin to the generic CIE/FDE printer.Rafael Espindola2011-05-062-65/+0
| | | | llvm-svn: 131031
* ExecutionEngine: delete duplicated filesDylan Noblesmith2011-05-062-182/+0
| | | | | | Forgot to `svn rm` these in revisions 131025 / 131029. llvm-svn: 131030
* ExecutionEngine: add missing fileDylan Noblesmith2011-05-061-0/+91
| | | | | | From revision 131025. llvm-svn: 131029
* 1. Keep lines in 80 columns.Akira Hatanaka2011-05-063-7/+7
| | | | | | | 2. Remove unused function. 3. Correct indentation. llvm-svn: 131028
* ExecutionEngine: move createJIT() definitionDylan Noblesmith2011-05-062-19/+29
| | | | | | | As an ExecutionEngine class function, its definition really belongs in ExecutionEngine.cpp, not JIT.cpp. llvm-svn: 131027
* ExecutionEngine: push TargetMachine creation into clientsDylan Noblesmith2011-05-066-58/+22
| | | | | | | | In particular, into EngineBuilder. This should only impact the private API between the EE and EB classes, not external clients, since JITCtor and MCJITCtor are both protected members. llvm-svn: 131026
OpenPOWER on IntegriCloud