Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Try to not emit the dead side of ?: if the condition is a constant. | Chris Lattner | 2008-11-11 | 1 | -4/+21 |
| | | | | llvm-svn: 59061 | ||||
* | "a patch telling cmake to install clang headers in the target | Chris Lattner | 2008-11-11 | 1 | -0/+5 |
| | | | | | | | | install directory" Patch by Lukasz Janyst! llvm-svn: 59059 | ||||
* | Introduce a single AST node SizeOfAlignOfExpr for all sizeof and alignof ↵ | Sebastian Redl | 2008-11-11 | 23 | -267/+212 |
| | | | | | | expressions, both of values and types. llvm-svn: 59057 | ||||
* | Add transfer function support for ObjCForCollectionStmt to LiveVariables. | Ted Kremenek | 2008-11-11 | 1 | -1/+17 |
| | | | | llvm-svn: 59053 | ||||
* | Add CFG support for Objective-C 2.0 fast enumeration 'for' statement: | Ted Kremenek | 2008-11-11 | 1 | -13/+77 |
| | | | | | | | | http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_7_section_2.html#//apple_ref/doc/uid/TP30001163-CH18-SW3 Need to modify GRExprEngine, LiveVariables, and UninitializedValues to understand this construct. llvm-svn: 59049 | ||||
* | Implement C++ 'typeid' parsing and sema. | Sebastian Redl | 2008-11-11 | 20 | -16/+264 |
| | | | | llvm-svn: 59042 | ||||
* | Add CodeGenFunction::EmitBranch. | Daniel Dunbar | 2008-11-11 | 6 | -41/+40 |
| | | | | | | | - Emits an unconditional branch, with extra logic to avoid generating spurious branches out of dummy blocks. llvm-svn: 59037 | ||||
* | Fix cmake build, patch from Jjgod Jiang. | Daniel Dunbar | 2008-11-11 | 1 | -0/+2 |
| | | | | llvm-svn: 59036 | ||||
* | short circuit && and || when possible. This substantially reduces | Chris Lattner | 2008-11-11 | 4 | -28/+64 |
| | | | | | | | | the size of the -O0 output on some cases. For example, on expr.c from 176.gcc, it shrinks the .ll file from 43164 to 42835 lines, and removed references to two external symbols. llvm-svn: 59034 | ||||
* | Make codegen smart enough to not emit the dead side of an if whose | Chris Lattner | 2008-11-11 | 1 | -5/+49 |
| | | | | | | | condition is a constant. This shrinks -O0 codegen by quite a bit on some cases. llvm-svn: 59033 | ||||
* | implement debug info for typeof() | Chris Lattner | 2008-11-11 | 1 | -6/+9 |
| | | | | llvm-svn: 59032 | ||||
* | merge some testcases together. | Chris Lattner | 2008-11-11 | 3 | -16/+16 |
| | | | | llvm-svn: 59031 | ||||
* | Move backend output out of destructor. | Daniel Dunbar | 2008-11-11 | 2 | -3/+8 |
| | | | | | | Don't free AST consumer when --disable-free is set. llvm-svn: 59030 | ||||
* | remove the wrong PR # from the file name. | Chris Lattner | 2008-11-11 | 1 | -0/+0 |
| | | | | llvm-svn: 59029 | ||||
* | add PR# | Chris Lattner | 2008-11-11 | 1 | -0/+1 |
| | | | | llvm-svn: 59028 | ||||
* | Fix PR3031 by silencing follow-on errors in invalid declarations. | Chris Lattner | 2008-11-11 | 5 | -6/+11 |
| | | | | llvm-svn: 59027 | ||||
* | Remove unused function declaration. | Daniel Dunbar | 2008-11-11 | 1 | -3/+0 |
| | | | | llvm-svn: 59024 | ||||
* | Add CodeGenFunction::EmitDummyBlock for marking places where we make | Daniel Dunbar | 2008-11-11 | 3 | -7/+16 |
| | | | | | | | "dummy" blocks (blocks just used to make sure we have a place to dump code to). llvm-svn: 59022 | ||||
* | Remove CodeGenFunction::StartBlock. | Daniel Dunbar | 2008-11-11 | 2 | -14/+4 |
| | | | | | | - Was confusing and only used in one small part of the code. llvm-svn: 59020 | ||||
* | These tests have no needed to redirect stderr to stdout. | Daniel Dunbar | 2008-11-11 | 2 | -6/+6 |
| | | | | llvm-svn: 59019 | ||||
* | Centralize basic block creation in CodeGenFunction::createBasicBlock. | Daniel Dunbar | 2008-11-11 | 9 | -68/+73 |
| | | | | | | - No functionality change. llvm-svn: 59017 | ||||
* | Fix StringLiteral print bug. | Zhongxing Xu | 2008-11-11 | 1 | -1/+17 |
| | | | | llvm-svn: 59015 | ||||
* | Add && to test command. | Zhongxing Xu | 2008-11-11 | 1 | -1/+1 |
| | | | | llvm-svn: 59014 | ||||
* | Fix Release-Asserts warning. | Daniel Dunbar | 2008-11-11 | 1 | -0/+1 |
| | | | | llvm-svn: 59013 | ||||
* | Basic support for taking the address of an overloaded function | Douglas Gregor | 2008-11-10 | 9 | -14/+203 |
| | | | | llvm-svn: 59000 | ||||
* | Update VC++ project file. | Steve Naroff | 2008-11-10 | 1 | -0/+4 |
| | | | | llvm-svn: 58996 | ||||
* | Remove an out-of-date FIXME | Douglas Gregor | 2008-11-10 | 1 | -1/+0 |
| | | | | llvm-svn: 58990 | ||||
* | Improve parser error recovery after a constructor initializer | Douglas Gregor | 2008-11-10 | 3 | -3/+28 |
| | | | | llvm-svn: 58989 | ||||
* | Allow user-defined conversions during reference binding | Douglas Gregor | 2008-11-10 | 2 | -2/+77 |
| | | | | llvm-svn: 58988 | ||||
* | Don't create a typedef for the injected-class-name | Douglas Gregor | 2008-11-10 | 1 | -14/+5 |
| | | | | llvm-svn: 58987 | ||||
* | Some cleanups to the declaration/checking of overloaded operators in C++. ↵ | Douglas Gregor | 2008-11-10 | 6 | -146/+142 |
| | | | | | | Thanks to Sebastian for the review llvm-svn: 58986 | ||||
* | Add pretty printing to StringRegion. | Zhongxing Xu | 2008-11-10 | 2 | -0/+6 |
| | | | | llvm-svn: 58985 | ||||
* | Add region store model to path-sensitive testing. | Zhongxing Xu | 2008-11-10 | 1 | -0/+1 |
| | | | | llvm-svn: 58983 | ||||
* | Implement RegionStoreManager::RemoveDeadBindings(). This prunes several ↵ | Zhongxing Xu | 2008-11-10 | 1 | -4/+20 |
| | | | | | | false warning caused by removal of symbolic constraints. Currently we just mark all symbols live. Further optimization for dead binding removal needed. llvm-svn: 58982 | ||||
* | don't preserve names on IR instructions. This matches llvm-gcc's behavior and | Chris Lattner | 2008-11-10 | 1 | -1/+2 |
| | | | | | | speeds up the compiler by ~8% at -emit-llvm -O0. llvm-svn: 58977 | ||||
* | sort files add a missed header to the project. | Chris Lattner | 2008-11-10 | 1 | -8/+10 |
| | | | | llvm-svn: 58976 | ||||
* | Fix even more bugs in debug info support: | Chris Lattner | 2008-11-10 | 1 | -5/+0 |
| | | | | | | | | | 1. emit proper debug info for forward decls of structs. 2. emit DW_TAG_member nodes around members of a field like llvm-gcc does. This slows down debug info generation, but is required for correctness. llvm-svn: 58973 | ||||
* | reimplement debug info generation in terms of DebugInfo.h instead of | Chris Lattner | 2008-11-10 | 3 | -722/+410 |
| | | | | | | | using MachineModuleInfo. This runs at about the same speed as the old code, but fixes a bunch of bugs and is simpler and shorter. llvm-svn: 58971 | ||||
* | Print integer value instead of raw pointer. This is a hack to be fixed by ↵ | Zhongxing Xu | 2008-11-10 | 1 | -3/+1 |
| | | | | | | migrating the output in analyzer to llvm::raw_ostream. llvm-svn: 58965 | ||||
* | silence a warning from gcc. | Chris Lattner | 2008-11-10 | 1 | -0/+1 |
| | | | | llvm-svn: 58956 | ||||
* | Introduce ScopedDecl::getLexicalDeclContext() which is different from ↵ | Argyrios Kyrtzidis | 2008-11-09 | 7 | -31/+137 |
| | | | | | | | | | | | | | ScopedDecl::getDeclContext() when there are nested-names. e.g.: namespace A { void f(); // SemanticDC (getDeclContext) == LexicalDC (getLexicalDeclContext) == 'namespace A' } void A::f(); // SemanticDC == namespace 'A' // LexicalDC == global namespace llvm-svn: 58948 | ||||
* | When a tag has nested-name ('struct foo::bar'), use not 'CurContext' but the ↵ | Argyrios Kyrtzidis | 2008-11-09 | 1 | -15/+19 |
| | | | | | | context of the nested-name ('foo::'). llvm-svn: 58945 | ||||
* | Simplify handling of nested-names in tags ('struct foo::bar'). | Argyrios Kyrtzidis | 2008-11-09 | 2 | -59/+55 |
| | | | | | | | -Use more of the non nested-name code path. -Also use the ActOnTagStruct code path. llvm-svn: 58944 | ||||
* | Support named operands in inline asm statements. | Anders Carlsson | 2008-11-09 | 1 | -6/+51 |
| | | | | llvm-svn: 58940 | ||||
* | Update C++ status: class support improved due to nested name parsing. | Sebastian Redl | 2008-11-09 | 1 | -9/+9 |
| | | | | llvm-svn: 58932 | ||||
* | Implement Sema support for C++ nested-name-specifiers. | Argyrios Kyrtzidis | 2008-11-08 | 10 | -45/+426 |
| | | | | llvm-svn: 58916 | ||||
* | Silence a GCC member initialization order warning. | Argyrios Kyrtzidis | 2008-11-08 | 1 | -1/+1 |
| | | | | llvm-svn: 58914 | ||||
* | Implement support for C++ nested-name-specifiers ('foo::bar::x') in the ↵ | Argyrios Kyrtzidis | 2008-11-08 | 17 | -93/+572 |
| | | | | | | | | Parser side. No Sema functionality change, just the signatures of the Action/Sema methods. llvm-svn: 58913 | ||||
* | Introduce annotation tokens, a special kind of token, created and used only ↵ | Argyrios Kyrtzidis | 2008-11-08 | 4 | -7/+117 |
| | | | | | | | | by the parser to replace a group of tokens with a single token encoding semantic information. Will be fully utilized later for C++ nested-name-specifiers. llvm-svn: 58911 | ||||
* | Update C++ status to reflect parser capabilities for chapter 9 (classes). ↵ | Sebastian Redl | 2008-11-08 | 2 | -15/+121 |
| | | | | | | Slightly extend the class parser test. llvm-svn: 58909 |