summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* fix buildbot failure on windows by slightly trimming test output to ignore ↵Blaine Garst2010-02-231-2/+2
| | | | | | temporary name llvm-svn: 96998
* Remember to handle sub-registers when moving imp-defs to a rematted instruction.Jakob Stoklund Olesen2010-02-232-2/+66
| | | | llvm-svn: 96995
* Keep track of phi join registers explicitly in LiveVariables.Jakob Stoklund Olesen2010-02-235-52/+193
| | | | | | | | Previously, LiveIntervalAnalysis would infer phi joins by looking for multiply defined registers. That doesn't work if the phi join is implicitly defined in all but one of the predecessors. llvm-svn: 96994
* Add support for the weakref attribute. We still produce "alias weak" as ↵Rafael Espindola2010-02-2311-13/+144
| | | | | | llvm-gcc does, but are more strict on what uses of weakref we accept. llvm-svn: 96992
* Fix rev 96389 by restricting the xform to mask that's either signbit or max ↵Evan Cheng2010-02-231-4/+9
| | | | | | signed value. llvm-svn: 96990
* Unconditionally support block introspection data in a new field at the endBlaine Garst2010-02-237-59/+140
| | | | | | | | | | | | | | | of the block descriptor field. This field is the ObjC style @encode signature of the implementation function, and was to this point conditionally provided in the block literal data structure. That provisional support is removed. Additionally, eliminate unused enumerations for the block literal flags field. The first shipping ABI unconditionally set (1<<29) but this bit is unused by the runtime, so the second ABI will unconditionally have (1<<30) set so that the runtime can in fact distinguish whether the additional data is present or not. llvm-svn: 96989
* This is the second patch to allow x86 code to be aligned with optimal nops.Kevin Enderby2010-02-231-2/+47
| | | | | | | | | | With the compiler changed to use EmitCodeAlignment() it does change the functionality. But X86 assembly code assembled with llvm-mc does not change its output. For that we will eventually change the assembler frontend to detect a '.align x, 0x90' when used in a section that 'hasInstructions' and use EmitCodeAlignment, but will wait until we have better target hooks. llvm-svn: 96988
* Fixes a rewriting of qualified-id type which exposed a biggerFariborz Jahanian2010-02-232-5/+21
| | | | | | rewriting problem. Fixes radar 7680953. llvm-svn: 96987
* Dead emit dead store warnings when assigning nil to an ObjC objectTed Kremenek2010-02-232-1/+9
| | | | | | | pointer (for defensive programming). This matches the behavior with assigning NULL to a regular pointer. Fixes <rdar://problem/7631278>. llvm-svn: 96985
* Don't mark call instruction as a barrier.Richard Osborne2010-02-231-1/+1
| | | | llvm-svn: 96983
* Roll back r96959 again.Jeffrey Yasskin2010-02-2313-169/+12
| | | | llvm-svn: 96981
* Added for disassembly VLD1 (multiple single elements) which loads memory intoJohnny Chen2010-02-231-0/+33
| | | | | | | | | three or four registers and VLD2 (multiple two-element structures) which loads memory into two double-spaced registers. A8.6.307 & A8.6.310 llvm-svn: 96980
* Fix bogus diagnostic format string.Daniel Dunbar2010-02-233-3/+3
| | | | llvm-svn: 96978
* Use the module's context instead of the global context.Nicolas Geoffray2010-02-231-16/+16
| | | | llvm-svn: 96977
* Fix another crash on invalid code. In this case, handle ObjC categories ↵Ted Kremenek2010-02-232-10/+23
| | | | | | | | (with no names) that refer to an undefined class. llvm-svn: 96976
* new test case for r96974.Devang Patel2010-02-231-0/+9
| | | | llvm-svn: 96975
* no need to override IsLegalToFold, the base implementationChris Lattner2010-02-231-10/+0
| | | | | | disables load folding at -O0. llvm-svn: 96973
* fix a bug in findNonImmUse (used by IsLegalToFold) where nodes withChris Lattner2010-02-231-2/+14
| | | | | | | | | | no id's would cause early exit allowing IsLegalToFold to return true instead of false, producing a cyclic dag. This was striking the new isel because it isn't using SelectNodeTo yet, which theoretically is just an optimization. llvm-svn: 96972
* Print node ID's in dumps and views if set.Chris Lattner2010-02-231-0/+3
| | | | llvm-svn: 96971
* Don't assert on compound assignment operators that operate in FP types whenJohn McCall2010-02-232-3/+23
| | | | | | the result is integral. Fixes <rdar://problem/7676608>. llvm-svn: 96970
* Adding the MicroBlaze backend.Wesley Peck2010-02-2356-2/+6736
| | | | | | | | | | | | The MicroBlaze is a highly configurable 32-bit soft-microprocessor for use on Xilinx FPGAs. For more information see: http://www.xilinx.com/tools/microblaze.htm http://en.wikipedia.org/wiki/MicroBlaze The current LLVM MicroBlaze backend generates assembly which can be compiled using the an appropriate binutils assembler. llvm-svn: 96969
* A test case for property synthesis using ivar in class extensions.Fariborz Jahanian2010-02-231-0/+36
| | | | llvm-svn: 96968
* use OutStreamer.EmitCodeAlignment for alignment in the textChris Lattner2010-02-231-4/+3
| | | | | | segment. llvm-svn: 96967
* genericize MCAsmStreamer::EmitCodeAlignment to support other targetsChris Lattner2010-02-231-2/+3
| | | | | | so that it doesn't break them when the code generator starts using it. llvm-svn: 96966
* Oops. Pass -lgcc _only_ on ARM, not on everything except ARM.Jeffrey Yasskin2010-02-231-1/+1
| | | | llvm-svn: 96965
* ECALLF, ECALLT shouldn't be marked as barriers.Richard Osborne2010-02-231-2/+2
| | | | llvm-svn: 96964
* This is the first patch to put the needed bits in place to eventually allow codeKevin Enderby2010-02-236-3/+73
| | | | | | | | | | | to be aligned with optimal nops. This patch does not change any functionality and when the compiler is changed to use EmitCodeAlignment() it should also not change the resulting output. Once the compiler change is made and everything looks good the next patch with the table of optimal X86 nops will be added to WriteNopData() changing the output. There are many FIXMEs in this patch which will be removed when we have better target hooks (coming soon I hear). llvm-svn: 96963
* Make previous fix handle a few more edge cases.Eli Friedman2010-02-231-3/+3
| | | | llvm-svn: 96962
* PR6400: Handle an extreme edge case in mangling correctly.Eli Friedman2010-02-232-0/+9
| | | | llvm-svn: 96961
* Mark unconditional branches as barriers. Found using -verify-machineinstrsRichard Osborne2010-02-231-3/+3
| | | | llvm-svn: 96960
* Roll r96559 forward again, adding libLLVM-2.7svn.so to LLVM. This links 3 ofJeffrey Yasskin2010-02-2313-12/+169
| | | | | | the examples shared to make sure the shared library keeps working. llvm-svn: 96959
* PR6386: Fix a recent regression in IRGen of cast-to-union constructs.Eli Friedman2010-02-232-1/+13
| | | | llvm-svn: 96958
* Speed up cycle checking significantly by caching results.David Greene2010-02-231-3/+9
| | | | llvm-svn: 96956
* Don't do (X != Y) ? X : Y -> X for floating-point values; it doesn'tDan Gohman2010-02-232-5/+76
| | | | | | | | handle NaN properly. Do (X une Y) ? X : Y -> X if one of X and Y is not zero. llvm-svn: 96955
* Spelling. s/suppor /support /Jim Grosbach2010-02-231-3/+3
| | | | llvm-svn: 96954
* Remove the code which constant-folded ptrtoint(inttoptr(x)+c) toDan Gohman2010-02-232-64/+5
| | | | | | | | | | | getelementptr. Despite only doing so in the case where x is a known array object and c can be converted to an index within range, this could still be invalid if c is actually the address of an object allocated outside of LLVM. Also, SCEVExpander, the original motivation for this code, has since been improved to avoid inttoptr+ptroint in more cases. llvm-svn: 96950
* Modified examples Makefile to only build the ExceptionDemo example for Garrison Venn2010-02-231-1/+6
| | | | | | | | | | | | | x86 and x86_64 on UNIX systems. Only OS X 10.6.2 (x86_64) and 32bit CentOS 5.2 with gcc 4.1.2 were tested. ARM UNIX build triggered failure motivating this modification, as it seems that the ARM ABI does not support _Unwind_GetIP(...), _Unwind_SetGR(...), and _Unwind_SetIP(...). From doing a quick browse of: http://infocenter.arm.com/help/topic/com.arm.doc.ihi0038a/IHI0038A_ehabi.pdf, it seems as if all other exception related apis are supported. Looks like the port can be done to ARM. Thanks to Xerxes Rånby <xerxes@zafena.se> for pointing out this error. llvm-svn: 96949
* Testing subversion commit accessWesley Peck2010-02-231-0/+1
| | | | llvm-svn: 96948
* Fix -mtune forwarding.Mikhail Glushenkov2010-02-231-5/+5
| | | | llvm-svn: 96944
* Remove unused lowering function LowerJumpTableRichard Osborne2010-02-232-13/+0
| | | | llvm-svn: 96943
* Lower BR_JT on the XCore to a jump into a series of jump instructions.Richard Osborne2010-02-237-5/+259
| | | | llvm-svn: 96942
* Retain attributes for K&R style parameter declarations.Richard Pennington2010-02-232-4/+16
| | | | llvm-svn: 96941
* tests: Don't make a missing llvm-gcc dir a fatal error.Daniel Dunbar2010-02-231-2/+0
| | | | llvm-svn: 96938
* Switch .bc/.ll Makefile rules to use LLVM{CC,CXX} instead of LLVMG{CC,XX}Daniel Dunbar2010-02-233-16/+16
| | | | llvm-svn: 96936
* Add LLVM{CC,CXX} make variables, which specify the configured path the LLVMDaniel Dunbar2010-02-232-0/+25
| | | | | | capable compilers (which could be llvm-gcc or clang). llvm-svn: 96935
* Initial configure support for using Clang as the LLVM capable compiler.Daniel Dunbar2010-02-233-5/+193
| | | | | | | | | | | | | | | | | | | Comes in two parts: 1. Use --with-clang=path/to/clang/compiler to select an installed clang, or --with-built-clang to have the makefiles use the clang which will be built as the LLVM capable compiler. If neither is given, --with-built-clang will be used if the Clang sources are checked out into the standard location (tools/clang). 2. Use --with-llvmcc={llvm-gcc,clang,none} to specify which LLVM capable compiler to use. If not given, then llvm-gcc will be used if available, otherwise Clang. Makefile support still to come. Eric, Doug, Chris, seem reasonable? llvm-svn: 96934
* Update mcc16 and the ancient Clang plugin for the 'cmd_line' -> 'command' ↵Mikhail Glushenkov2010-02-233-38/+32
| | | | | | change. llvm-svn: 96933
* Eliminate CFERuntimeLibDir make variable, this shouldn't be needed.Daniel Dunbar2010-02-231-4/+2
| | | | llvm-svn: 96932
* Fix a thinko in the lit.cfg.Daniel Dunbar2010-02-231-1/+1
| | | | llvm-svn: 96931
* Input files with empty suffixes must be passed to linker.Mikhail Glushenkov2010-02-232-2/+3
| | | | llvm-svn: 96927
OpenPOWER on IntegriCloud