summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix undefined behavior (signed integer overflow) when Clang parses a ↵Richard Smith2012-08-241-1/+3
| | | | | | hexfloat with an enormous exponent. Caught by an existing unit test + -ftrapv. llvm-svn: 162505
* Formatting cleanup.Eric Christopher2012-08-231-7/+7
| | | | llvm-svn: 162499
* Add an assert here in case parsing gave us a NULL compile unit.Eric Christopher2012-08-231-1/+3
| | | | llvm-svn: 162498
* Remove the DW_AT_MIPS_linkage name attribute when we don't need itEric Christopher2012-08-231-1/+8
| | | | | | | | | | | output (we're emitting a specification already and the information isn't changing) and we're not in old gdb compat mode. Saves 1% on the debug information for a build of llvm. Fixes rdar://11043421 llvm-svn: 162493
* Turn these two options in to trinary state so that they can beEric Christopher2012-08-232-15/+42
| | | | | | turned on and off separate from the platform if you're on darwin. llvm-svn: 162487
* Add a flag to DwarfDebug to allow it to communicate whether or notEric Christopher2012-08-232-0/+9
| | | | | | we're using the darwin old gdb compat mode for emitting dwarf. llvm-svn: 162486
* Preserve operand flags in convertToThreeAddress() by copying operands.Jakob Stoklund Olesen2012-08-231-67/+52
| | | | | | No test case, this is a generalization of r160260. llvm-svn: 162485
* Tristate mayLoad, mayStore, and hasSideEffects.Jakob Stoklund Olesen2012-08-231-0/+17
| | | | | | | Keep track of the set/unset state of these bits along with their true/false values, but treat '?' as '0' for now. llvm-svn: 162461
* Favor FMA3 over FMA4 if both are enabled.Craig Topper2012-08-231-1/+2
| | | | llvm-svn: 162454
* Fix a bunch of -Wdocumentation warnings.Dmitri Gribenko2012-08-231-1/+1
| | | | llvm-svn: 162446
* Typo.Eric Christopher2012-08-231-1/+1
| | | | llvm-svn: 162438
* Only emit the __debug_inlined section if we're trying to be compatibleEric Christopher2012-08-231-1/+5
| | | | | | | | with older gdbs on darwin. rdar://10975874 llvm-svn: 162436
* Emit pubtypes only when going for darwin gdb compatibility.Eric Christopher2012-08-231-1/+4
| | | | | | rdar://10393214 llvm-svn: 162434
* Add an option for darwin gdb compatibility.Eric Christopher2012-08-231-2/+9
| | | | llvm-svn: 162432
* Use a switch statement instead of a bunch of if-else checks and pull out the ↵Craig Topper2012-08-231-8/+10
| | | | | | common function call. llvm-svn: 162428
* Remove unused private field to silence build warning.Craig Topper2012-08-233-7/+4
| | | | llvm-svn: 162426
* 80-col.Eric Christopher2012-08-231-1/+1
| | | | llvm-svn: 162422
* Tidy.Eric Christopher2012-08-231-3/+3
| | | | llvm-svn: 162421
* Simplify the computeOperandLatency API.Andrew Trick2012-08-233-114/+54
| | | | | | | | | The logic for recomputing latency based on a ScheduleDAG edge was shady. This bypasses the problem by requiring the client to provide operand indices. This ensures consistent use of the machine model's API. llvm-svn: 162420
* Make function loadImmediate a member of MipsSEInstrInfo and change it to returnAkira Hatanaka2012-08-235-65/+54
| | | | | | | | | | the temporary register that was used to load the immediate. Currently, it always returns register $at, but this will change if, in the future, we decide to use another register. No changes in functionality. llvm-svn: 162417
* Add a member of type Mips16InstrInfo/MipsSEInstrInfo to classAkira Hatanaka2012-08-226-13/+15
| | | | | | | | Mips16RegisterInfo/MipsSERegisterInfo. No changes in functionality. llvm-svn: 162413
* Print out the location of expanded multiclass defs in TableGen errors.Jakob Stoklund Olesen2012-08-222-5/+19
| | | | | | | | | | | | | | | | | | | When reporting an error for a defm, we would previously only report the location of the outer defm, which is not always where the error is. Now we also print the location of the expanded multiclass defs: lib/Target/X86/X86InstrSSE.td:2902:12: error: foo defm ADD : basic_sse12_fp_binop_s<0x58, "add", fadd, SSE_ALU_ITINS_S>, ^ lib/Target/X86/X86InstrSSE.td:2801:11: note: instantiated from multiclass defm PD : sse12_fp_packed<opc, !strconcat(OpcodeStr, "pd"), OpNode, VR128, ^ lib/Target/X86/X86InstrSSE.td:194:5: note: instantiated from multiclass def rm : PI<opc, MRMSrcMem, (outs RC:$dst), (ins RC:$src1, x86memop:$src2), ^ llvm-svn: 162409
* SimplifyLibCalls: Give all safely-shrinkable libcalls the same treatment.Benjamin Kramer2012-08-221-5/+5
| | | | llvm-svn: 162383
* [ms-inline asm] Avoid a false positive assertionChad Rosier2012-08-221-1/+3
| | | | | | | | | | | Assertion failed: (Start.isValid() == End.isValid() && "Start and end should either both be valid or both be invalid!") when parsing inline asm. SMLoc assumes that the first char * in the source is invalid. However, when parsing an inline asm the mnemonic is at this location. I don't want to change SMLoc, so use a trivial workaround. llvm-svn: 162381
* Add a few float shrinking optimizations to SimplifyLibCalls. UnsafeChad Rosier2012-08-221-36/+99
| | | | | | | optimizations are guarded by the -enable-double-float-shrink LLVM option. Last bit of PR13574. Patch by Weiming Zhao <weimingz@codeaurora.org>. llvm-svn: 162368
* Tidy up a few more uses of MF.getFunction()->getName().David Blaikie2012-08-2212-27/+15
| | | | | | | | Based on CR feedback from r162301 and Craig Topper's refactoring in r162347 here are a few other places that could use the same API (& in one instance drop a Function.h dependency). llvm-svn: 162367
* Add a new helper function, AddOpt(F1, F1, Opt), as part of PR13574. NoChad Rosier2012-08-221-14/+15
| | | | | | functional change intended. Patch by Weiming Zhao <weimingz@codeaurora.org>. llvm-svn: 162363
* Reduce duplicated hash map lookups.Benjamin Kramer2012-08-227-23/+20
| | | | llvm-svn: 162362
* Rejected 169195. As Duncan commented, bitcasting to proper type is wrong ↵Stepan Dyatkovskiy2012-08-221-23/+3
| | | | | | approach. We need to insert some valid TRANCATE node here. llvm-svn: 162354
* Add a getName function to MachineFunction. Use it in places that previously ↵Craig Topper2012-08-2227-54/+48
| | | | | | did getFunction()->getName(). Remove includes of Function.h that are no longer needed. llvm-svn: 162347
* Don't cache the MBB in the class. Its only used by one function. Change a ↵Craig Topper2012-08-221-5/+3
| | | | | | for loop over operands to use unsigned instead of int. llvm-svn: 162344
* Mark a function as static since it doesn't use anything in the class.Craig Topper2012-08-221-1/+1
| | | | llvm-svn: 162342
* Add register Mips::GP to the list of reserved registers if target is bare-metalAkira Hatanaka2012-08-226-7/+22
| | | | | | | | to prevent it from being clobbered. mips uses $gp to access small data section. This bug was originally reported by Carl Norum. llvm-svn: 162340
* Add option disable-mips-delay-filler. Turn on mips' delay slot filler byAkira Hatanaka2012-08-221-4/+5
| | | | | | | | default. Patch by Carl Norum. llvm-svn: 162339
* For mips64 switch statements in subroutines could generate Jack Carter2012-08-222-4/+10
| | | | | | | | | | | | | within the codegen EK_GPRel64BlockAddress. This was not supported for direct object output and resulted in an assertion. This change adds support for EK_GPRel64BlockAddress for direct object. One fallout from this is to turn on rela relocations for mips64 to match gas. llvm-svn: 162334
* Initialize SelectionDAGBuilder's Context in 'init', not in its constructor. TheRichard Smith2012-08-222-1/+2
| | | | | | | | SelectionDAG's 'init' has not been called when the SelectionDAGBuilder is constructed (in SelectionDAGISel's constructor), so this was previously always initialized with 0. llvm-svn: 162333
* Reduce alignment of SmallVector<T> to the required amount, rather than ↵Richard Smith2012-08-221-3/+3
| | | | | | forcing 16-byte alignment. This fixes misaligned SmallVector accesses via ExtractValueInst's SmallVector data member. llvm-svn: 162331
* Add a few functions to TargetLibraryInfo as part of PR13574.Chad Rosier2012-08-211-0/+36
| | | | | | Patch by Weiming Zhao <weimingz@codeaurora.org>. llvm-svn: 162329
* MaximumSpanningTree::EdgeWeightCompare: Make this comparator actually be aRichard Smith2012-08-211-25/+28
| | | | | | strict weak ordering, and don't pass possibly-null pointers to dyn_cast. llvm-svn: 162314
* Fix unaligned memory accesses when performing relocations in X86 JIT. There'sRichard Smith2012-08-211-4/+13
| | | | | | | no cost to using memcpy here: the fixed code is optimized by LLVM to perfect machine code. llvm-svn: 162311
* Don't bind a reference to a dereferenced null pointer (for return value of ↵Richard Smith2012-08-211-1/+2
| | | | | | WeakVH::operator*). llvm-svn: 162309
* [ms-inline asm] Do not report a Parser error when matching inline assembly.Chad Rosier2012-08-211-14/+25
| | | | llvm-svn: 162306
* Remove unnecessary cast that was also unnecessarily casting away constness.David Blaikie2012-08-211-1/+1
| | | | | | | | | | Even looking at the revision history I couldn't quite piece together why this cast was ever written in the first place, but I assume it was because of some change in the inheritance, perhaps this function was reimplemented in a derived type & this caller was meant to get the base version (& it wasn't virtual)? llvm-svn: 162301
* Fix macros arguments with an underscore, dot or dollar in them. This is basedRafael Espindola2012-08-211-1/+9
| | | | | | on a patch by Andy/PaX. I added the support for dot and dollar. llvm-svn: 162298
* [ms-inline asm] Expose the ErrorInfo from the MatchInstructionImpl. In general,Chad Rosier2012-08-211-4/+6
| | | | | | | | | this is the index of the operand that failed to match. Note: This may cause a buildbot failure due to an API mismatch in clang. Should recover with my next commit to clang. llvm-svn: 162295
* Make the wording in of the "expected identifier" error in the .macro directiveRafael Espindola2012-08-211-2/+2
| | | | | | | consistent with the other "expected identifier" errors. Extracted from the Andy/PaX patch. I added the test. llvm-svn: 162291
* Add support for the --param ssp-buffer-size= driver option.Chad Rosier2012-08-211-9/+3
| | | | | | PR9673 llvm-svn: 162284
* Use typedefs. Fix indentation. Extracted from the Andy/PaX patch.Rafael Espindola2012-08-211-5/+4
| | | | llvm-svn: 162283
* Remove unused variable. Extracted from the Andy/PaX patch.Rafael Espindola2012-08-211-2/+0
| | | | llvm-svn: 162282
* Fix typo. Extracted from the Andy/PaX patch.Rafael Espindola2012-08-211-1/+1
| | | | llvm-svn: 162281
OpenPOWER on IntegriCloud