summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Switch the ObjC*Decl raw_stream overloads to take a reference, for ↵Benjamin Kramer2012-02-076-13/+11
| | | | | | consistency with NamedDecls. llvm-svn: 149981
* Bitcode/BitstreamReader.h: Tweak for big endian hosts.NAKAMURA Takumi2012-02-071-4/+6
| | | | llvm-svn: 149980
* Introduce basic ASTs for lambda expressions. This covers:Douglas Gregor2012-02-0724-59/+780
| | | | | | | | | | | | | | | | | | | | | | | | - Capturing variables by-reference and by-copy within a lambda - The representation of lambda captures - The creation of the non-static data members in the lambda class that store the captured variables - The initialization of the non-static data members from the captured variables - Pretty-printing lambda expressions There are a number of FIXMEs, both explicit and implied, including: - Creating a field for a capture of 'this' - Improved diagnostics for initialization failures when capturing variables by copy - Dealing with temporaries created during said initialization - Template instantiation - AST (de-)serialization - Binding and returning the lambda expression; turning it into a proper temporary - Lots and lots of semantic constraints - Parameter pack captures llvm-svn: 149977
* Use SmallVector instead of std::vector.Bill Wendling2012-02-071-4/+4
| | | | llvm-svn: 149976
* Use 'ArrayRef<>' instead of 'std::vector<>&' for passed-in arguments.Bill Wendling2012-02-071-39/+38
| | | | llvm-svn: 149975
* Calculate the .size() of the vector once.Bill Wendling2012-02-071-5/+5
| | | | llvm-svn: 149974
* Reserve a moderate amount of space for the back-end arguments.Bill Wendling2012-02-071-0/+1
| | | | llvm-svn: 149973
* Rephrase to add clarity.Bill Wendling2012-02-071-3/+3
| | | | llvm-svn: 149972
* test commitAnat Shemer2012-02-071-0/+1
| | | | llvm-svn: 149971
* Do not fold ADD / SUB into load / store (to form pre-indexed, post-indexedEvan Cheng2012-02-071-24/+58
| | | | | | | | load / store) if the ADD / SUB has a live definition of CPSR. Bug reported by David Meyer. Alas, no test case. llvm-svn: 149970
* Add instruction selection for 256-bit VPSHUFD and 128-bit VPERMILPS/VPERMILPD.Craig Topper2012-02-075-31/+59
| | | | llvm-svn: 149968
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-0730-89/+66
| | | | llvm-svn: 149967
* Fix a bug in semantic analysis involving anonymous structs and flexible arrays.Eli Friedman2012-02-072-2/+20
| | | | llvm-svn: 149966
* Fix a couple of nasty bugs involving negative enum constants. ↵Eli Friedman2012-02-074-26/+30
| | | | | | <rdar://problem/10760113>. llvm-svn: 149965
* Update test case.Ted Kremenek2012-02-071-3/+16
| | | | llvm-svn: 149964
* Make FunctionDecl::doesDeclarationForceExternallyVisibleDefinition use the ↵Eli Friedman2012-02-072-29/+96
| | | | | | same logic as FunctionDecl::isInlineDefinitionExternallyVisible to figure out whether to emit a definition. Based on work by Anton Yartsev. llvm-svn: 149963
* Add support for UndefinedAtom in yaml and native format. Add test cases ↵Nick Kledzik2012-02-0713-179/+443
| | | | | | with undefined atoms llvm-svn: 149962
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-0742-151/+106
| | | | llvm-svn: 149961
* Create PathDiagnosticCallEnter and PathDiagnosticCallExit, to remark calls ↵Ted Kremenek2012-02-075-11/+41
| | | | | | | | in PathDiagnostics from other events. This will have potential uses later. llvm-svn: 149960
* Tweak BugReporter extensive diagnostics to not add edges between function calls.Ted Kremenek2012-02-071-1/+28
| | | | llvm-svn: 149959
* Quote name of function in path diagnostics.Ted Kremenek2012-02-071-1/+1
| | | | llvm-svn: 149958
* Cache the sizes of vectors instead of calculating them all over the place.Bill Wendling2012-02-071-9/+11
| | | | llvm-svn: 149954
* Remove the unused TypoCorrectionConsumer::MaxEditDistance.Kaelyn Uhrain2012-02-071-37/+13
| | | | | | | | | | | | MaxEditDistance was effectively unused as it being initialized to the max unsigned valued but never updated. Removing it avoids conversion headaches once the "edit distance" of a typo correction is a weighted composite of several values instead of roughly the number of characters changed; comparing the weighted composite value to the number of characters in a typo would require some form of normalization to make it comparable to the old, character-based notion of edit distance. llvm-svn: 149953
* Reserve space in these vectors to prevent having to grow the array tooBill Wendling2012-02-072-6/+8
| | | | | | much. This gets us an addition 0.9% on 445.gobmk. llvm-svn: 149952
* Filter a few more options not recognized by gcc. <rdar://problem/10814020>Bob Wilson2012-02-071-3/+17
| | | | | | | These are new options that gcc doesn't recognize so the clang driver needs to remove them when it falls back to invoking gcc. llvm-svn: 149951
* Add C11 FLT_TRUE_MIN and friends. <rdar://problem/10812837>.Eli Friedman2012-02-071-0/+11
| | | | llvm-svn: 149949
* [analyzer] Allow each CString check to be enabled/disabledAnna Zaks2012-02-075-20/+106
| | | | | | separately. llvm-svn: 149947
* Bump up the initial vector size to avoid having to grow the vector more often.Bill Wendling2012-02-071-1/+1
| | | | llvm-svn: 149945
* [asan] don't crash if /proc/self/maps has enormous size (linux)Kostya Serebryany2012-02-071-2/+2
| | | | llvm-svn: 149944
* simplify a bunch of code to use the well-known LLVM IR types computed by ↵Chris Lattner2012-02-0723-217/+133
| | | | | | CodeGenModule. llvm-svn: 149943
* tidy up code, make the common case (1-byte strings) come firstChris Lattner2012-02-071-19/+13
| | | | llvm-svn: 149942
* Fix win32 build breakage from bitcode streaming patchDerek Schuff2012-02-071-1/+4
| | | | llvm-svn: 149941
* [asan] make sure the AsanThread object is destroyed if pthread_exit is calledKostya Serebryany2012-02-076-9/+34
| | | | llvm-svn: 149940
* Add basic BugReporter support for CallEnter/CallExit. WIP.Ted Kremenek2012-02-075-0/+363
| | | | llvm-svn: 149939
* Misc improvements to the diagnostic when a variable is odr-used in a context ↵Eli Friedman2012-02-076-16/+60
| | | | | | | | that is not allowed to capture variables. Fixes PR11883. llvm-svn: 149937
* Use a more efficient container for these values. Also reserve space when using aBill Wendling2012-02-071-3/+6
| | | | | | std::vector. llvm-svn: 149936
* Use a SmallVector instead of std::vector. This improves compilation time inBill Wendling2012-02-071-5/+5
| | | | | | 445.gobmk by ~1.7%. llvm-svn: 149935
* [fast-isel] Add support for ADDs with non-legal types.Chad Rosier2012-02-062-5/+74
| | | | llvm-svn: 149934
* Don't recalculate the size of the array each time through the for-loop.Bill Wendling2012-02-061-2/+2
| | | | llvm-svn: 149933
* This is a small patch with a couple of improvements for running lit with ↵Andrew Trick2012-02-062-2/+9
| | | | | | | | | | | | | --debug: 1. Added a status note when a config file is loaded directly with load_config. This helps notice loads of lit.cfg from lit.site.cfg 2. Added a status note on the result of a config load. Previously, it was just notifying that it tries to load a config file. Now it will also say whether the load succeeded or the file wasn't found The two changes give better visibility into which config files were actually loaded by lit. The effect is only on --debug runs. Patch by Eli Bendersky! llvm-svn: 149932
* Minor comment clarification.Eli Friedman2012-02-061-1/+1
| | | | llvm-svn: 149931
* Fix a minor regression from my potentially-evaluated expression changes.Eli Friedman2012-02-062-0/+13
| | | | llvm-svn: 149930
* Relax valid location check. This fixes a clang crash while emitting debug ↵Devang Patel2012-02-062-2/+21
| | | | | | info for properties that are synthesized by the compiler by default. llvm-svn: 149929
* build wide strings with ConstantDataArray, just because we can.Chris Lattner2012-02-061-12/+18
| | | | llvm-svn: 149928
* Expose TargetPassConfig to PEI PassAndrew Trick2012-02-062-0/+2
| | | | llvm-svn: 149927
* Add TargetPassConfig to the PassManager for use inside passesAndrew Trick2012-02-062-5/+7
| | | | llvm-svn: 149926
* The patch resolves the conflict between AddressSanitizer and load widening ↵Kostya Serebryany2012-02-062-0/+51
| | | | | | | | | (GVN). The problem initially reported by Mozilla folks (http://code.google.com/p/address-sanitizer/issues/detail?id=20), but it also prevents us from enabling LLVM bootstrap with AddressSanitizer. llvm-svn: 149925
* improve the code that handles IR generation of byte-sized string literals to ↵Chris Lattner2012-02-061-35/+19
| | | | | | | | avoid allocating an std::string. llvm-svn: 149924
* Added source location for the template keyword in ↵Abramo Bagnara2012-02-069-43/+39
| | | | | | | | | | DependentTemplateSpecializationTypeLoc nodes (DTSTLoc). The new info is propagated to TSTLoc on template instantiation, getting rid of 3 FIXMEs in TreeTransform.h and another one Parser.cpp. Simplified code in TypeSpecLocFiller visitor methods for DTSTLoc and DependentNameTypeLoc by removing what now seems to be dead code (adding corresponding assertions). llvm-svn: 149923
* Fix comment-rulers.Nick Lewycky2012-02-064-4/+4
| | | | llvm-svn: 149922
OpenPOWER on IntegriCloud