summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Adding a bunch of options to the mcc16 driver.Sanjiv Gupta2009-12-191-44/+55
| | | | llvm-svn: 91776
* rename dprintf to dbgpritnf, in order to fix build with glibc (which already ↵Nuno Lopes2009-12-191-29/+29
| | | | | | defines dprintf in stdio.h llvm-svn: 91775
* fix build and while at it remove a redudant includeNuno Lopes2009-12-192-2/+1
| | | | llvm-svn: 91774
* Test cases for changes done in 91768.Sanjiv Gupta2009-12-192-0/+21
| | | | llvm-svn: 91773
* 1. In indirect load/store insns , the name of fsr should be emitted as INDF.Sanjiv Gupta2009-12-191-5/+13
| | | | | | 2. include standard asmbly headers in generated asmbly. llvm-svn: 91768
* Fix a bunch of little errors that Clang complains about when its being pedanticDouglas Gregor2009-12-1910-24/+24
| | | | llvm-svn: 91764
* fix PR5827 by disabling the phi slicing transformation in a caseChris Lattner2009-12-192-2/+77
| | | | | | | | where instcombine would have to split a critical edge due to a phi node of an invoke. Since instcombine can't change the CFG, it has to bail out from doing the transformation. llvm-svn: 91763
* Update my SROA changes in response to review.Bob Wilson2009-12-191-33/+38
| | | | | | | | | | * change FindElementAndOffset to return a uint64_t instead of unsigned, and to identify the type to be used for that result in a GEP instruction. * move "isa<ConstantInt>" to be first in conditional. * replace some dyn_casts with casts. * add a comment about handling mem intrinsics. llvm-svn: 91762
* More bzero -> memset that I missed.Daniel Dunbar2009-12-192-13/+13
| | | | llvm-svn: 91757
* Add missing newlines at EOF (for clang++).Daniel Dunbar2009-12-192-2/+2
| | | | llvm-svn: 91756
* Use memset instead of bzero, its more portable.Daniel Dunbar2009-12-191-2/+2
| | | | llvm-svn: 91754
* Remove spurious semicolon. Thanks, ClangDouglas Gregor2009-12-191-1/+1
| | | | llvm-svn: 91752
* Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit Sean Callanan2009-12-1918-12/+5255
| | | | | | | | | | | | | | | | | | | | incarnations), integrated into the MC framework. The disassembler is table-driven, using a custom TableGen backend to generate hierarchical tables optimized for fast decode. The disassembler consumes MemoryObjects and produces arrays of MCInsts, adhering to the abstract base class MCDisassembler (llvm/MC/MCDisassembler.h). The disassembler is documented in detail in - lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime) - utils/TableGen/DisassemblerEmitter.cpp (table emitter) You can test the disassembler by running llvm-mc -disassemble for i386 or x86_64 targets. Please let me know if you encounter any problems with it. llvm-svn: 91749
* Bump alignment requirements for windows targets to achieve compartibility ↵Anton Korobeynikov2009-12-191-0/+3
| | | | | | | | with vcpp. Based on patch by Michael Beck! llvm-svn: 91745
* Use 4-arg getVTList) variant instead of generic one, when possibleAnton Korobeynikov2009-12-191-0/+1
| | | | llvm-svn: 91744
* Delete unused code.Dan Gohman2009-12-191-14/+0
| | | | llvm-svn: 91743
* Fix a spello in a comment that Nick spotted.Dan Gohman2009-12-191-2/+2
| | | | llvm-svn: 91742
* Fix a comment.Dan Gohman2009-12-191-2/+2
| | | | llvm-svn: 91741
* Make some methods const. The only interesting change here is thatChris Lattner2009-12-195-26/+28
| | | | | | | | it changes raw_fd_ostream::preferred_buffer_size to return zero on a scary stat failure instead of setting the stream to an error state. This method really should not mutate the stream. llvm-svn: 91740
* Qualify a bunch of explicit template instantiations to satisfy clang++.John McCall2009-12-194-8/+8
| | | | llvm-svn: 91736
* Put TypesEqual and TypeHasCycleThroughItself in namespace llvm so ADL fromJohn McCall2009-12-191-3/+8
| | | | | | the templates in TypesContext.h can find them. Caught by clang++. llvm-svn: 91735
* Forgot forward declaration.Bill Wendling2009-12-191-0/+2
| | | | llvm-svn: 91732
* Eliminate unnecessary LLVMContexts.Dan Gohman2009-12-185-10/+3
| | | | llvm-svn: 91729
* Changes from review:Bill Wendling2009-12-188-193/+144
| | | | | | | | | | | - Move DisableScheduling flag into TargetOption.h - Move SDNodeOrdering into its own header file. Give it a minimal interface that doesn't conflate construction with storage. - Move assigning the ordering into the SelectionDAGBuilder. This isn't used yet, so there should be no functional changes. llvm-svn: 91727
* Make this comment more precise.Dan Gohman2009-12-181-1/+1
| | | | llvm-svn: 91722
* Fix an issue in googletest where a name was used before it was defined.Eli Friedman2009-12-181-1/+6
| | | | llvm-svn: 91718
* Increase opportunities to optimize (brcond (srl (and c1), c2)).Evan Cheng2009-12-182-1/+57
| | | | llvm-svn: 91717
* Fix gcc warning.Eli Friedman2009-12-181-1/+2
| | | | llvm-svn: 91715
* Catch more cases of a pointer being marked garbage twice. This helps whenRafael Espindola2009-12-182-1/+31
| | | | | | debugging some leaks (PR5770 in particular). llvm-svn: 91713
* Reapply 91459 with a simple fix for the problem that broke the x86_64-darwinBob Wilson2009-12-182-405/+514
| | | | | | | bootstrap. This also replaces the WeakVH references that Chris objected to with normal Value references. llvm-svn: 91711
* Fix another parallel make race condition.Bob Wilson2009-12-181-0/+1
| | | | llvm-svn: 91709
* Formalize MDNode's function-localness:Victor Hernandez2009-12-184-17/+76
| | | | | | | | | | | - an MDNode is designated as function-local when created, and continues to be even if its operands are modified not to refer to function-local IR - function-localness is designated via lowest bit in SubclassData - getLocalFunction() descends MDNode tree to see if it is consistently function-local Add verification of MDNodes to checks that MDNodes are consistently function-local. Update AsmWriter to use isFunctionLocal(). llvm-svn: 91708
* Fix Win32 Path.inc for API update.Daniel Dunbar2009-12-181-1/+1
| | | | llvm-svn: 91706
* Revert this use of NUW/NSW also. Overflow-undefined multiplication isn'tDan Gohman2009-12-181-3/+6
| | | | | | associative either. llvm-svn: 91701
* Fix libstdc++ build on ARM linux and part of PR5770.Rafael Espindola2009-12-181-0/+3
| | | | | | | | | | | | | | MI was not being used but it was also not being deleted, so it was kept in the garbage list. The memory itself was freed once the function code gen was done. Once in a while the codegen of another function would create an instruction on the same address. Adding it to the garbage group would work once, but when another pointer was added it would cause an assert as "Cache" was about to be pushed to Ts. For a patch that make us detect problems like this earlier, take a look at http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20091214/092758.html With that patch we assert as soon and the new instruction is added to the garbage set. llvm-svn: 91691
* Fix wrong frame pointer save offset in the 64-bit PowerPC SVR4 ABI.Tilmann Scheller2009-12-181-1/+1
| | | | | | Patch contributed by Ken Werner of IBM! llvm-svn: 91681
* Add support for calls through function pointers in the 64-bit PowerPC SVR4 ABI.Tilmann Scheller2009-12-184-3/+141
| | | | | | Patch contributed by Ken Werner of IBM! llvm-svn: 91680
* Make 'set_option' work with list options.Mikhail Glushenkov2009-12-182-11/+29
| | | | | | This works now: (set_option "list_opt", ["val_1", "val_2", "val_3"]) llvm-svn: 91679
* Optimize icmp of null and select of two constants even if the select hasEli Friedman2009-12-182-15/+33
| | | | | | multiple uses. (The construct in question was found in gcc.) llvm-svn: 91675
* On recent Intel u-arch's, folding loads into some unary SSE instructions canEvan Cheng2009-12-187-17/+110
| | | | | | | | | | | | | | | | | | | be non-optimal. To be precise, we should avoid folding loads if the instructions only update part of the destination register, and the non-updated part is not needed. e.g. cvtss2sd, sqrtss. Unfolding the load from these instructions breaks the partial register dependency and it can improve performance. e.g. movss (%rdi), %xmm0 cvtss2sd %xmm0, %xmm0 instead of cvtss2sd (%rdi), %xmm0 An alternative method to break dependency is to clear the register first. e.g. xorps %xmm0, %xmm0 cvtss2sd (%rdi), %xmm0 llvm-svn: 91672
* Revert this use of NSW; this one isn't actually safe. NSW additionDan Gohman2009-12-181-4/+2
| | | | | | is not reassociative. llvm-svn: 91667
* Eliminte unnecessary uses of <cstdio>.Dan Gohman2009-12-182-5/+3
| | | | llvm-svn: 91666
* Add utility routines for NSW multiply.Dan Gohman2009-12-187-0/+42
| | | | llvm-svn: 91664
* Add utility routines for creating integer negation operators with NSW set.Dan Gohman2009-12-188-0/+37
| | | | | | Integer negation only overflows with INT_MIN, but that's an important case. llvm-svn: 91662
* Delete an unused variable.Dan Gohman2009-12-181-1/+0
| | | | llvm-svn: 91659
* Fix typo.Eric Christopher2009-12-181-1/+1
| | | | llvm-svn: 91657
* Preserve NSW information in more places.Dan Gohman2009-12-182-9/+20
| | | | llvm-svn: 91656
* Re-apply 91623 now that I actually know what I was trying to do.Evan Cheng2009-12-181-25/+1
| | | | llvm-svn: 91655
* Add Loop contains utility methods for testing whether a loopDan Gohman2009-12-1812-37/+53
| | | | | | | | contains another loop, or an instruction. The loop form is substantially more efficient on large loops than the typical code it replaces. llvm-svn: 91654
* Minor code simplification.Dan Gohman2009-12-181-4/+1
| | | | llvm-svn: 91653
OpenPOWER on IntegriCloud