summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Add CFG support for implicit-control flow for VLA size expressions within an ↵Ted Kremenek2008-09-262-13/+29
| | | | | | SizeOfAlignOfTypeExpr. llvm-svn: 56706
* Now Attributes are divided in three groupsDevang Patel2008-09-262-5/+9
| | | | | | | | | | | - return attributes - inreg, zext and sext - parameter attributes - function attributes - nounwind, readonly, readnone, noreturn Return attributes use 0 as the index. Function attributes use ~0U as the index. llvm-svn: 56705
* Now Attributes are divided in three groupsDevang Patel2008-09-2617-103/+325
| | | | | | | | | | | | | - return attributes - inreg, zext and sext - parameter attributes - function attributes - nounwind, readonly, readnone, noreturn Return attributes use 0 as the index. Function attributes use ~0U as the index. This patch requires corresponding changes in llvm-gcc and clang. llvm-svn: 56704
* Temporarily reverting r56683. This is causing a failure during the build of ↵Bill Wendling2008-09-2613-38/+18
| | | | | | | | | | | | | | | | | llvm-gcc: /Volumes/Gir/devel/llvm/clean/llvm-gcc.obj/./gcc/xgcc -B/Volumes/Gir/devel/llvm/clean/llvm-gcc.obj/./gcc/ -B/Volumes/Gir/devel/llvm/clean/llvm-gcc.install/i386-apple-darwin9.5.0/bin/ -B/Volumes/Gir/devel/llvm/clean/llvm-gcc.install/i386-apple-darwin9.5.0/lib/ -isystem /Volumes/Gir/devel/llvm/clean/llvm-gcc.install/i386-apple-darwin9.5.0/include -isystem /Volumes/Gir/devel/llvm/clean/llvm-gcc.install/i386-apple-darwin9.5.0/sys-include -mmacosx-version-min=10.4 -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc.src/gcc -I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include -I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include -I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Gir/devel/llvm/clean/llvm.obj/include -I/Volumes/Gir/devel/llvm/clean/llvm.src/include -fexceptions -fvisibility=hidden -DHIDE_EXPORTS -c ../../llvm-gcc.src/gcc/unwind-dw2-fde-darwin.c -o libgcc/./unwind-dw2-fde-darwin.o Assertion failed: (TargetRegisterInfo::isVirtualRegister(regA) && TargetRegisterInfo::isVirtualRegister(regB) && "cannot update physical register live information"), function runOnMachineFunction, file /Volumes/Gir/devel/llvm/clean/llvm.src/lib/CodeGen/TwoAddressInstructionPass.cpp, line 311. ../../llvm-gcc.src/gcc/unwind-dw2.c:1527: internal compiler error: Abort trap Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://developer.apple.com/bugreporter> for instructions. {standard input}:3521:non-relocatable subtraction expression, "_dwarf_reg_size_table" minus "L20$pb" {standard input}:3521:symbol: "_dwarf_reg_size_table" can't be undefined in a subtraction expression {standard input}:3520:non-relocatable subtraction expression, "_dwarf_reg_size_table" minus "L20$pb" ... llvm-svn: 56703
* Fix missing whitespace in the printing of function notes.Dan Gohman2008-09-261-3/+3
| | | | llvm-svn: 56702
* Updated checker build.Ted Kremenek2008-09-261-1/+1
| | | | llvm-svn: 56701
* Rename ConstantSDNode's getSignExtended to getSExtValue, forDan Gohman2008-09-2610-34/+30
| | | | | | | consistancy with ConstantInt, and re-implement it in terms of ConstantInt's getSExtValue. llvm-svn: 56700
* Make some minor reorganizations and comment changes to eliminate trivialDan Gohman2008-09-261-15/+23
| | | | | | differences between the CallInst and InvokeInst classes. llvm-svn: 56699
* Mark lea fi# as being really rematerializable.Dan Gohman2008-09-261-2/+3
| | | | llvm-svn: 56698
* unpckhps requires sse1, punpckhdq requires sse2.Evan Cheng2008-09-261-4/+4
| | | | llvm-svn: 56697
* clean up a bunch of fixme's I added, by moving Chris Lattner2008-09-2610-71/+71
| | | | | | DirectoryLookup::DirType into SourceManager.h llvm-svn: 56692
* Update LICENSE link.Daniel Dunbar2008-09-261-1/+1
| | | | llvm-svn: 56689
* Fix the rest of rdar://6243860 hopefully. This requires changing FileIDInfoChris Lattner2008-09-266-51/+50
| | | | | | | | | | | to whether the fileid is a 'extern c system header' in addition to whether it is a system header, most of this is spreading plumbing around. Once we have that, PPLexerChange bases its "file enter/exit" notifications to PPCallbacks to base the system header state on FileIDInfo instead of HeaderSearch. Finally, in Preprocessor::HandleIncludeDirective, mirror logic in GCC: the system headerness of a file being entered can be set due to the #includer or the #includee. llvm-svn: 56688
* fit in 80 cols.Chris Lattner2008-09-261-1/+1
| | | | llvm-svn: 56687
* Fix X86FastISel's address folding to check displacementDan Gohman2008-09-261-5/+12
| | | | | | values for overflow. llvm-svn: 56686
* Fix @llvm.frameaddress codegen. FP elimination optimization should be ↵Evan Cheng2008-09-2613-16/+56
| | | | | | disabled when frame address is desired. Also add support for depth > 0. llvm-svn: 56683
* CMake: Builds all examples. Corrected name of CBackend target.Oscar Fuentes2008-09-266-2/+35
| | | | llvm-svn: 56682
* Generated files for previous patch.Dale Johannesen2008-09-263-1823/+1800
| | | | llvm-svn: 56679
* Another file I forgot.Dale Johannesen2008-09-261-1/+0
| | | | llvm-svn: 56678
* Add "inreg" field to CallSDNode (doesn't increaseDale Johannesen2008-09-2620-58/+51
| | | | | | | | | its size). Adjust various lowering functions to pass this info through from CallInst. Use it to implement sseregparm returns on X86. Remove X86_ssecall calling convention. llvm-svn: 56677
* Factor out the code for determining when symblic addressesDan Gohman2008-09-264-17/+50
| | | | | | | | | require RIP-relative addressing and use it to fix a bug in X86FastISel in x86-64 PIC mode, where it was trying to use base/index registers with RIP-relative addresses. This fixes a bunch of x86-64 testsuite failures. llvm-svn: 56676
* Avoid spilling EBP / RBP twice in the prologue.Evan Cheng2008-09-263-10/+20
| | | | llvm-svn: 56675
* We don't need to insert copies for implicit_def's.Owen Anderson2008-09-261-1/+5
| | | | llvm-svn: 56674
* alphabetize filesChris Lattner2008-09-261-1/+1
| | | | llvm-svn: 56673
* Do not create CFGs for functions/methods using blocks (need to add ↵Ted Kremenek2008-09-261-0/+9
| | | | | | control-flow). llvm-svn: 56672
* testcase for my previous patch.Chris Lattner2008-09-261-0/+2
| | | | llvm-svn: 56670
* emulate a bit of GCC path lookup weirdness: if a system Chris Lattner2008-09-261-6/+37
| | | | | | | | | | | | | | | | | | | | | | | directory is shadowed by a user directory in the lookup path, ignore the user directory not the system one. Not doing this can affect file lookup and the "is a system header" bit on locations. For example: clang -v -I/usr/include inc.c -E | & grep /usr/inc now prints: # 1 "/usr/include/i386/_types.h" 1 3 4 # 37 "/usr/include/i386/_types.h" 3 4 # 70 "/usr/include/i386/_types.h" 3 4 instead of: # 1 "/usr/include/i386/_types.h" 1 # 37 "/usr/include/i386/_types.h" # 70 "/usr/include/i386/_types.h" This is part of rdar://6243860. llvm-svn: 56669
* Enter a new scope for a @try block.Ted Kremenek2008-09-262-0/+18
| | | | llvm-svn: 56668
* When looking for executable extensions, ignore .dSYM, as that's the debug ↵Jim Grosbach2008-09-262-2/+2
| | | | | | info directory on Darwin. llvm-svn: 56667
* Updated checker build.Ted Kremenek2008-09-261-1/+1
| | | | llvm-svn: 56666
* X86 address displacement field must be interpreted as a 32-bit value.Evan Cheng2008-09-261-3/+4
| | | | llvm-svn: 56665
* Move VLA processing logic from LiveVariables to CFG construction. This way ↵Ted Kremenek2008-09-262-31/+27
| | | | | | all dataflow analyses "see" the VLA size expressions. llvm-svn: 56655
* Tweak Expr::isModifiableLvalue() and Expr::isLvalue() to better deal with ↵Steve Naroff2008-09-265-3/+34
| | | | | | | | BlockDeclRef exprs. This fixes <rdar://problem/6248392> clang: Error when using address of stack variable inside block. llvm-svn: 56652
* Examine VLA size expressions when computing liveness information.Ted Kremenek2008-09-262-5/+34
| | | | | | Fixes <rdar://problem/6248086> llvm-svn: 56645
* Change Radar reproducibility to "Always".Daniel Dunbar2008-09-261-0/+0
| | | | llvm-svn: 56644
* Set svn:ignore on AsmPrinter Release-Asserts directories.Daniel Dunbar2008-09-260-0/+0
| | | | llvm-svn: 56643
* Parser support for prefix __attribute__ on @protocol.Daniel Dunbar2008-09-269-10/+32
| | | | llvm-svn: 56642
* CMake: Builds all targets.Oscar Fuentes2008-09-2617-48/+274
| | | | llvm-svn: 56641
* Sema support for format and noreturn attributes on Objective-C methods.Daniel Dunbar2008-09-263-10/+50
| | | | llvm-svn: 56640
* Add support for CFString in format attribute.Daniel Dunbar2008-09-263-11/+40
| | | | llvm-svn: 56639
* Add # of block pointer types to -print-stats.Daniel Dunbar2008-09-261-1/+4
| | | | llvm-svn: 56638
* Disable support for x86_f80 in X86FastISel. Supporting it wouldDan Gohman2008-09-261-9/+6
| | | | | | require more work. llvm-svn: 56637
* Make clang preprocessed output a bit more like gcc output.Daniel Dunbar2008-09-261-1/+1
| | | | llvm-svn: 56636
* Update clang to pretend to be gcc-4.2.Daniel Dunbar2008-09-261-4/+4
| | | | | | - This really needs to be automated and configurable. llvm-svn: 56635
* Comment fix.Daniel Dunbar2008-09-261-1/+1
| | | | llvm-svn: 56634
* Updated checker build.Ted Kremenek2008-09-261-1/+1
| | | | llvm-svn: 56633
* Have @finally introduce a new scope.Ted Kremenek2008-09-262-0/+14
| | | | | | Fixes: <rdar://problem/6248119> @finally doesn't introduce a new scope llvm-svn: 56629
* If we have a function with an unreachable statement such that the ending debugBill Wendling2008-09-265-11/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | information is in an unreachable block, then it's possible that the high/low pc values won't be set for the dwarf information. E.g., this function: void abort(void) __attribute__((__noreturn__)); void dead_beef(void) __attribute__ ((noreturn)); int *b; void dead_beef(void) { *b=0xdeadbeef; abort(); } has a call to "@llvm.dbg.region.end" only in the unreachable block: define void @dead_beef() noreturn nounwind { entry: call void @llvm.dbg.func.start(...) call void @llvm.dbg.stoppoint(...) ... call void @abort( ) noreturn nounwind unreachable return: ; No predecessors! call void @llvm.dbg.stoppoint(...) call void @llvm.dbg.region.end(...) ret void } The dwarf information emitted is something like: 0x00000084: TAG_subprogram [5] AT_name( "dead_beef" ) AT_external( 0x01 ) AT_prototyped( 0x01 ) AT_decl_file( 0x01 ) AT_decl_line( 0x08 ) Note that this is *not* the best fix for this problem, but a band-aid for an gaping wound. This code needs to be changed when we revamp our debugging information. llvm-svn: 56628
* Prefer movlhps over punpcklqdq, etc. in more cases.Evan Cheng2008-09-252-6/+6
| | | | llvm-svn: 56627
* Fix a bug in which address displacements were being added to theDan Gohman2008-09-251-1/+9
| | | | | | load from the stub, instead of the result of the load from the stub. llvm-svn: 56626
OpenPOWER on IntegriCloud