summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* fix an embarassing typo that resulted in llvm-gcc bootstrap miscompareChris Lattner2009-09-121-1/+1
| | | | | | because the sorting wasn't sorting. llvm-svn: 81592
* Added SCAS instructions in their 8, 16, 32, andSean Callanan2009-09-122-0/+6
| | | | | | 64-bit variants for the disassembler. llvm-svn: 81591
* Fix -Asserts warning.Daniel Dunbar2009-09-111-2/+2
| | | | llvm-svn: 81580
* Update CMake files.Ted Kremenek2009-09-113-1/+3
| | | | llvm-svn: 81577
* Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn'tDan Gohman2009-09-114-18/+19
| | | | | | | | | | | | | | | working. To support this, add an is_displayed() function to raw_ostream, and generalize Process::StandardOutIsDisplayed and friends in order to support it. Also, call RemoveFileOnSignal before creating a file instead of after, so that the file isn't left behind if the program is interrupted between when the file is created and RemoveFileOnSignal is called. While here, add a -S to llvm-extract and port it to IRReader so that it supports assembly input. llvm-svn: 81568
* Revert array initialization regclass change so that the initialization stays ↵Jim Grosbach2009-09-111-24/+20
| | | | | | static, not runtime. llvm-svn: 81560
* Update register class references to use the global constant ↵Jim Grosbach2009-09-112-26/+30
| | | | | | ARM::*RegisterClass names. llvm-svn: 81556
* Added ADC, SUB, SBB, and OR instructions that operateSean Callanan2009-09-112-0/+41
| | | | | | on rAX and an immediate. llvm-svn: 81551
* fix pastoChris Lattner2009-09-111-2/+2
| | | | llvm-svn: 81544
* Don't generate Dwarf line table entries for source line 0.Caroline Tice2009-09-111-0/+6
| | | | llvm-svn: 81542
* fix some fixmes: emit stubs in sorted order.Chris Lattner2009-09-111-14/+34
| | | | llvm-svn: 81541
* Fix PR4948 (and a leak): by not destroying the DwarfExceptionDuncan Sands2009-09-111-0/+2
| | | | | | | | | object, the timer it creates was not being deleted. Since the timer belonged to a static timer group, the timer group would be destroyed on shutdown, and would notice and complain that not all timers it contained were destroyed. llvm-svn: 81533
* turn on -experimental-asm-printer for x86 / AT&T by default.Chris Lattner2009-09-111-1/+1
| | | | llvm-svn: 81532
* reject attempts to take the address of an intrinsic, PR4949.Chris Lattner2009-09-111-0/+12
| | | | llvm-svn: 81530
* Bugfix. Sorry.Andreas Neustifter2009-09-111-1/+1
| | | | llvm-svn: 81517
* Make ProfileEstimator even more robust on general CFGs.Andreas Neustifter2009-09-112-55/+112
| | | | llvm-svn: 81516
* switch HiddenGVStubs to be a DenseMap instead of a string map, mirroring ↵Chris Lattner2009-09-113-9/+28
| | | | | | FnStubs and GVStubs. llvm-svn: 81514
* Fix a bug I introduced in FnStubs generation, switch GVStubs to be a Chris Lattner2009-09-113-29/+79
| | | | | | densemap instead of StringMap to match FnStubs. llvm-svn: 81513
* change FnStubs from being a StringMap<std::string> to being a muchChris Lattner2009-09-113-17/+34
| | | | | | | | | | more efficient SmallPtrSet<MCSymbol*>. This eliminates string craziness and fixes CodeGen/X86/darwin-quote.ll with the new asmprinter. Codegen is producing stubs in a nondeterminstic order, but it was doing this before anyway. llvm-svn: 81511
* printInstruction() no longer prints a \n after itself, do itChris Lattner2009-09-111-0/+1
| | | | | | for the two instruction MOVPC32r sequence. llvm-svn: 81509
* reimplement X86ATTAsmPrinter::GetGlobalAddressSymbol in terms ofChris Lattner2009-09-111-15/+21
| | | | | | | | Mangler::getNameWithPrefix. In addition to avoiding some over quoting, this also is more efficient because it uses smallvector instead of std::string thrashing. llvm-svn: 81508
* fix prefix ordering, it's L_foo not _LfooChris Lattner2009-09-111-2/+1
| | | | llvm-svn: 81506
* add a new Mangler::getNameWithPrefix API which returns theChris Lattner2009-09-111-2/+48
| | | | | | | | (uniqued if unnamed) global variable name with the prefix that it is supposed to get. It doesn't do "mangling" in the sense of adding quotes and hacking on bad characters. llvm-svn: 81505
* convert X86ATTAsmPrinter::GetExternalSymbolSymbol to use SmallStringChris Lattner2009-09-111-7/+11
| | | | | | instead of std::string and Mangler. llvm-svn: 81503
* rearrange some code, export a SmallString version of DecorateCygMingName.Chris Lattner2009-09-113-52/+53
| | | | llvm-svn: 81502
* Follow up to 81494. When the folded reload is narrowed to a 32-bit load then ↵Evan Cheng2009-09-111-0/+16
| | | | | | change the destination register to a 32-bit one or add a sub-register index. llvm-svn: 81496
* It's not legal to fold a load from a narrower stack slot into a wider ↵Evan Cheng2009-09-112-10/+31
| | | | | | | | | | | | instruction. If done, the instruction does a 64-bit load and that's not safe. This can happen we a subreg_to_reg 0 has been coalesced. One exception is when the instruction that folds the load is a move, then we can simply turn it into a 32-bit load from the stack slot. rdar://7170444 llvm-svn: 81494
* Make fast-isel try ISD::FNEG before resorting to bitcasts and xors.Dan Gohman2009-09-111-1/+9
| | | | llvm-svn: 81493
* Reapply r81171 with a fix: don't try to use i64 when itDan Gohman2009-09-111-4/+19
| | | | | | isn't legal. llvm-svn: 81492
* Fix indentation.Dan Gohman2009-09-111-1/+1
| | | | llvm-svn: 81484
* Teach lib/VMCore/ConstantFold.cpp how to set the inbounds keyword andDan Gohman2009-09-114-15/+107
| | | | | | | | | | | | | how to fold notionally-out-of-bounds array getelementptr indices instead of just doing these in lib/Analysis/ConstantFolding.cpp, because it can be done in a fairly general way without TargetData, and because not all constants are visited by lib/Analysis/ConstantFolding.cpp. This enables more constant folding. Also, set the "inbounds" flag when the getelementptr indices are one-past-the-end. llvm-svn: 81483
* Factor out the code for checking that all indices in a getelementptr areDan Gohman2009-09-103-15/+38
| | | | | | | | | within the notional bounds of the static type of the getelementptr (which is not the same as "inbounds") from GlobalOpt into a utility routine, and use it in ConstantFold.cpp to check whether there are any mis-behaved indices. llvm-svn: 81478
* Give these files top-level comments that describe the current code.Dan Gohman2009-09-101-3/+7
| | | | llvm-svn: 81473
* Fix whitespaces.Devang Patel2009-09-101-4/+4
| | | | llvm-svn: 81468
* Don't swap the operands of a subtraction when trying to create aBob Wilson2009-09-101-1/+1
| | | | | | post-decrement load/store. llvm-svn: 81464
* Fix uppercaseo.Dale Johannesen2009-09-101-1/+1
| | | | llvm-svn: 81463
* Added the ParseInstruction() hook for target specific assembler directives soKevin Enderby2009-09-101-1/+38
| | | | | | | | that things like .word can be parsed as target specific. Moved parsing .word out of AsmParser.cpp into X86AsmParser.cpp as it is 2 bytes on X86 and 4 bytes for other targets that support the .word directive. llvm-svn: 81461
* Fit code within 80 columnsVictor Hernandez2009-09-101-2/+4
| | | | llvm-svn: 81459
* Added XOR instructions for rAX and immediates ofSean Callanan2009-09-102-0/+11
| | | | | | various widths. llvm-svn: 81458
* Added MOV instructions between rAX and memory offsets,Sean Callanan2009-09-102-0/+23
| | | | | | | including segment offsets and (for 8-bit operands) absolute offsets. llvm-svn: 81457
* Added a variety of PUSH and POP instructions, includingSean Callanan2009-09-102-5/+29
| | | | | | | ones capable of accessing R/M operands instead of just registers. llvm-svn: 81456
* Exit early if exception handling isn't supported.Bill Wendling2009-09-101-13/+13
| | | | llvm-svn: 81454
* Make ProfileEstimator more robust on general CFGs.Andreas Neustifter2009-09-102-44/+69
| | | | llvm-svn: 81450
* Add some braces to make newer GCCs happy and update CMakeLists.Benjamin Kramer2009-09-103-4/+7
| | | | llvm-svn: 81443
* Cleaned up code by factoring out common portions of edge loading into function.Andreas Neustifter2009-09-101-50/+44
| | | | llvm-svn: 81438
* Correctly handle the case where a comparison is created in one BasicBlock andNick Lewycky2009-09-101-37/+30
| | | | | | used by a terminator in another. llvm-svn: 81437
* Comment and whitespace cleanups. No intentional functionality change.Bill Wendling2009-09-101-27/+21
| | | | llvm-svn: 81436
* Revert part of my r81424 patch. I removed what looked like superfluous paddingBill Wendling2009-09-101-23/+37
| | | | | | | | from the exception tables. However, Duncan explained why it's a can of worms to do it the GCC way. I went back to doing it the LLVM way and added Duncan's explanation so that I don't do this again in the future. llvm-svn: 81434
* Add malloc call utility functions. Patch by Victor Hernandez.Evan Cheng2009-09-103-52/+319
| | | | llvm-svn: 81426
* Don't hardcode the TType format size. In fact, rework the code so that it's moreBill Wendling2009-09-101-49/+49
| | | | | | | | like what GCC outputs. The mysterious code to insert padding wasn't in GCC at all. I modified the TType base offset code to calculate the offset like GCC does, though. llvm-svn: 81424
OpenPOWER on IntegriCloud