summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Okay, some compilers complain if you provide the exception-specificationJohn McCall2011-03-141-5/+0
| | | | | | | where none was before. Just don't declare it and hope it's declared in every translation unit that needs it. llvm-svn: 127612
* Fix the exception-specification of abort() when declaring it in C++.John McCall2011-03-141-1/+1
| | | | llvm-svn: 127610
* Make llvm_unreachable evaluate to __builtin_unreachable() in -AssertsJohn McCall2011-03-142-1/+16
| | | | | | builds, which was the apparent consensus of PR8973 and llvmdev. llvm-svn: 127608
* Rename members to match LLVM naming conventions more closely.Jakob Stoklund Olesen2011-03-141-111/+109
| | | | | | | | Remove the unused reserved_ bit vector, no functional change intended. This doesn't break 'svn blame', this file really is all my fault. llvm-svn: 127607
* Remove some dead patterns.Jim Grosbach2011-03-144-56/+0
| | | | llvm-svn: 127601
* BIT_CONVERT has been renamed to BITCAST.Evan Cheng2011-03-141-1/+1
| | | | llvm-svn: 127600
* Minor optimization. sign-ext/anyext of undef is still undef.Evan Cheng2011-03-143-5/+23
| | | | llvm-svn: 127598
* Indentation.Evan Cheng2011-03-141-1/+1
| | | | llvm-svn: 127595
* Negating a recurrence preserves no-self-wrap.Andrew Trick2011-03-141-0/+11
| | | | llvm-svn: 127593
* Trailing whitespace.Jim Grosbach2011-03-141-46/+46
| | | | llvm-svn: 127592
* HowFarToZero can compute a trip count as long as the recurrence has ↵Andrew Trick2011-03-141-16/+20
| | | | | | no-self-wrap. llvm-svn: 127591
* Added SCEV::NoWrapFlags to manage unsigned, signed, and self wrapAndrew Trick2011-03-147-182/+307
| | | | | | | | | properties. Added the self-wrap flag for SCEV::AddRecExpr. A slew of temporary FIXMEs indicate the intention of the no-self-wrap flag without changing behavior in this revision. llvm-svn: 127590
* whitespaceAndrew Trick2011-03-141-66/+66
| | | | llvm-svn: 127589
* PTX: Emit global arrays with proper sizesJustin Holewinski2011-03-143-45/+74
| | | | | | | - Emit all arrays as type .b8 and proper sizes in bytes to conform to the output of nvcc llvm-svn: 127584
* PTX: Add support for sqrt/sin/cos intrinsicsJustin Holewinski2011-03-142-0/+89
| | | | llvm-svn: 127578
* ptx: add set.p instruction and related changes to predicate executionChe-Liang Chiou2011-03-145-17/+168
| | | | llvm-svn: 127577
* Emacs mode string.Mikhail Glushenkov2011-03-141-1/+1
| | | | llvm-svn: 127576
* Correct small comment order typo.Francois Pichet2011-03-141-1/+1
| | | | llvm-svn: 127575
* This case is solved by Scalar Replacement of Aggregates (DT) andJin-Gu Kang2011-03-141-25/+3
| | | | | | Early CSE pass so this patch reverts it to original source code. llvm-svn: 127574
* ptx: add basic support of predicate executionChe-Liang Chiou2011-03-134-59/+177
| | | | llvm-svn: 127569
* Add comment as following:Jin-Gu Kang2011-03-131-0/+12
| | | | | | | | | | | | | | | | | load and store reference same memory location, the memory location is represented by getelementptr with two uses (load and store) and the getelementptr's base is alloca with single use. At this point, instructions from alloca to store can be removed. (this pattern is generated when bitfield is accessed.) For example, %u = alloca %struct.test, align 4 ; [#uses=1] %0 = getelementptr inbounds %struct.test* %u, i32 0, i32 0;[#uses=2] %1 = load i8* %0, align 4 ; [#uses=1] %2 = and i8 %1, -16 ; [#uses=1] %3 = or i8 %2, 5 ; [#uses=1] store i8 %3, i8* %0, align 4 llvm-svn: 127565
* LTO is not ready for Windows.Oscar Fuentes2011-03-131-1/+4
| | | | llvm-svn: 127562
* Now that we are deleting unused live intervals during allocation, pointers ↵Jakob Stoklund Olesen2011-03-131-2/+4
| | | | | | | | may be reused. Use the virtual register number as a cache tag instead. They are not reused. llvm-svn: 127561
* Tell the register allocator about new unused virtual registers.Jakob Stoklund Olesen2011-03-134-1/+26
| | | | | | | This allows the allocator to free any resources used by the virtual register, including physical register assignments. llvm-svn: 127560
* Build EnhancedDisassembly as a shared library too.Oscar Fuentes2011-03-121-5/+28
| | | | llvm-svn: 127555
* Build CompilerDriver library.Oscar Fuentes2011-03-122-4/+7
| | | | llvm-svn: 127554
* Build LTO as a static library too.Oscar Fuentes2011-03-121-4/+12
| | | | llvm-svn: 127553
* Build LTO as a static library too.Oscar Fuentes2011-03-122-5/+9
| | | | llvm-svn: 127549
* Teach ComputeMaskedBits about sub nsw.Benjamin Kramer2011-03-122-8/+39
| | | | llvm-svn: 127548
* Whe we build a shared library, add its list of used libraries to theOscar Fuentes2011-03-122-2/+7
| | | | | | | | link command. Fixed a pair of IF expressions too. llvm-svn: 127546
* Update link components for llvm-dis and LTO.Oscar Fuentes2011-03-122-2/+4
| | | | llvm-svn: 127545
* Speculatively revert commit 127478 (jsjodin) in an attempt to fix theDuncan Sands2011-03-123-0/+21
| | | | | | | | | | llvm-gcc-i386-linux-selfhost and llvm-x86_64-linux-checks buildbots. The original log entry: Remove optimization emitting a reference insted of label difference, since it can create more relocations. Removed isBaseAddressKnownZero method, because it is no longer used. llvm-svn: 127540
* This patch removes some of useless instructions generated by bitfield access.Jin-Gu Kang2011-03-121-3/+13
| | | | llvm-svn: 127539
* Include snippets in the live stack interval.Jakob Stoklund Olesen2011-03-121-1/+3
| | | | llvm-svn: 127530
* Spill multiple registers at once.Jakob Stoklund Olesen2011-03-122-48/+210
| | | | | | | | | | | Live range splitting can create a number of small live ranges containing only a single real use. Spill these small live ranges along with the large range they are connected to with copies. This enables memory operand folding and maximizes the spill to fill distance. Work in progress with known bugs. llvm-svn: 127529
* Fixed the comparison operator for the enhancedSean Callanan2011-03-121-7/+2
| | | | | | disassembler's disassembler map. llvm-svn: 127527
* That's it, I am declaring this a failure of the C++03 STL.Jakob Stoklund Olesen2011-03-121-119/+15
| | | | | | | | | | | | | | There are too many compatibility problems with using mixed types in std::upper_bound, and I don't want to spend 110 lines of boilerplate setting up a call to a 10-line function. Binary search is not /that/ hard to implement correctly. I tried terminating the binary search with a linear search, but that actually made the algorithm slower against my expectation. Most live intervals have less than 4 segments. The early test against endIndex() does pay, and this version is 25% faster than plain std::upper_bound(). llvm-svn: 127522
* Saving files before committing is overrated.Eric Christopher2011-03-121-1/+1
| | | | | | Add a RUN line to this test. llvm-svn: 127520
* Sometimes isPredicable lies to us and tells us we don't need the operands.Eric Christopher2011-03-122-6/+85
| | | | | | | | | Go ahead and add them on when we might want to use them and let later passes remove them. Fixes rdar://9118569 llvm-svn: 127518
* Remove no-longer-correct special case for disasm of ARM BL instructions.Jim Grosbach2011-03-121-5/+0
| | | | llvm-svn: 127517
* Add FIXME.Jim Grosbach2011-03-121-0/+3
| | | | llvm-svn: 127516
* Pseudo-ize the ARM Darwin *r9 call instruction definitions. They're the sameJim Grosbach2011-03-122-27/+33
| | | | | | | | actual instruction as the non-Darwin defs, but have different call-clobber semantics and so need separate patterns. They don't need to duplicate the encoding information, however. llvm-svn: 127515
* Add a FIXME.Jim Grosbach2011-03-111-0/+2
| | | | llvm-svn: 127511
* Pseudo-ize the ARM 'B' instruction.Jim Grosbach2011-03-113-10/+14
| | | | llvm-svn: 127510
* Remove dead code. These ARM instruction definitions no longer exist.Jim Grosbach2011-03-112-9/+1
| | | | llvm-svn: 127509
* Remove dead code. These ARM instruction definitions no longer exist.Jim Grosbach2011-03-111-9/+0
| | | | llvm-svn: 127508
* Pseudo-ize VMOVDcc and VMOVScc.Jim Grosbach2011-03-113-9/+19
| | | | llvm-svn: 127506
* 80 columnsJim Grosbach2011-03-111-1/+2
| | | | llvm-svn: 127505
* Properly pseudo-ize the ARM LDMIA_RET instruction. This has the nice side-Jim Grosbach2011-03-1113-28/+32
| | | | | | effect that we get proper instruction printing using the "pop" mnemonic for it. llvm-svn: 127502
* Roll r127459 back in:Cameron Zwarich2011-03-1116-17/+31
| | | | | | | | | | | Optimize trivial branches in CodeGenPrepare, which often get created from the lowering of objectsize intrinsics. Unfortunately, a number of tests were relying on llc not optimizing trivial branches, so I had to add an option to allow them to continue to test what they originally tested. This fixes <rdar://problem/8785296> and <rdar://problem/9112893>. llvm-svn: 127498
OpenPOWER on IntegriCloud