summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Sign-extend 32-bit integer arguments when they are passed in 64-bit registers,Akira Hatanaka2012-01-241-1/+4
| | | | | | which is what N32/64 does. llvm-svn: 148875
* Switch PerformImplicitConversion over to use DefaultLvalueConversion for ↵Eli Friedman2012-01-242-4/+6
| | | | | | lvalue-to-rvalue conversion. llvm-svn: 148874
* Replace a hack to handle NSLog/NSLogv in sema by declaring them as Library ↵Jean-Daniel Dupas2012-01-243-12/+27
| | | | | | Builtins. llvm-svn: 148873
* Remove trailing slash in front of header name of ObjC builtins.Jean-Daniel Dupas2012-01-242-14/+14
| | | | llvm-svn: 148872
* Pass CCState by reference.Akira Hatanaka2012-01-241-1/+1
| | | | llvm-svn: 148871
* Added a mechanism for the IR interpreter to returnSean Callanan2012-01-246-66/+159
| | | | | | | | | an error along with its boolean result. The expression parser reports this error if the interpreter fails and the expression could not be run in the target. llvm-svn: 148870
* Pattern for f32 to i64 conversion.Akira Hatanaka2012-01-242-0/+8
| | | | llvm-svn: 148869
* [analyzer] Add the HTML file to the SATest diagnostic diff.Anna Zaks2012-01-243-5/+10
| | | | | | (Uses the functionality which has been in CmpRuns long before.) llvm-svn: 148868
* [analyzer] Testing: make diagnostic diffs more informative (addAnna Zaks2012-01-241-2/+5
| | | | | | diagnostic message). llvm-svn: 148867
* Add some needed symbols in exception.cpp and eliminate dependence upon ↵Howard Hinnant2012-01-242-1/+42
| | | | | | uncaught_exception() from cxa_vector.cpp. libc++abi is very nearly a self-contained (though not complete) library now. llvm-svn: 148866
* ARM Darwin symbol ref differences w/o subsection-via-symbols.Jim Grosbach2012-01-242-1/+20
| | | | | | | | When not using subsections via symbols, the assembler can resolve symbol differences (including pcrel references) to non-local labels at assembly time, not just those in the same atom. llvm-svn: 148865
* Intel Syntax: Extend special hand coded logic, to recognize special ↵Devang Patel2012-01-242-5/+18
| | | | | | instructions, for intel syntax. llvm-svn: 148864
* Marshall Clow reminded me that fallback_malloc.cpp was broken out for ↵Howard Hinnant2012-01-243-162/+176
| | | | | | testing purposes. We've agreed to simply rename fallback_malloc.cpp to fallback_malloc.ipp. Thanks Marshall. llvm-svn: 148863
* 64-bit sign extension in register instructions.Akira Hatanaka2012-01-243-13/+14
| | | | llvm-svn: 148862
* [libclang] In clang::getCursorKindForDecl() don't return "UnexposedDecl"Argyrios Kyrtzidis2012-01-247-25/+13
| | | | | | | | for forward references of classes and protocols, this breaks libclang API usage. rdar://10747438. llvm-svn: 148861
* Add some needed symbols to cxa_new_delete.cpp and put the display() stuff ↵Howard Hinnant2012-01-243-50/+113
| | | | | | under #DEBUG (again). llvm-svn: 148860
* Teach scanf/printf checking about '%Ld' and friends (a GNU extension). ↵Ted Kremenek2012-01-245-4/+39
| | | | | | Fixes PR 9466. llvm-svn: 148859
* Force triple on these tests to pacify the windows tester.Nick Lewycky2012-01-243-3/+3
| | | | llvm-svn: 148858
* Add a new warning, -Wover-aligned, which detects attempts to use the defaultNick Lewycky2012-01-247-0/+149
| | | | | | | allocator to construct an object which declares more alignment than the default allocator actually provides. Fixes PR9527! llvm-svn: 148857
* Tidy up. Trailing whitespace.Jim Grosbach2012-01-241-24/+24
| | | | llvm-svn: 148856
* Got fooled by fallback_malloc.cpp source file: it is really a private ↵Howard Hinnant2012-01-242-178/+161
| | | | | | header. I've manually included it into the only place it is used: cxa_exception.cpp. llvm-svn: 148854
* Add new file for public type_info-related signaturesHoward Hinnant2012-01-242-13/+57
| | | | llvm-svn: 148853
* Fix one of the (larger) FIXMEs where we were misusing the Driver's ideaChandler Carruth2012-01-241-19/+23
| | | | | | | | | | | | | | | | | | | | | of the target triple to stand in for the "host" triple. Thanks to a great conversation with Richard Smith, I'm now much more confident in how this is proceeding. In all of the places where we currently reason about the "host" architecture or triple, what we really want to reason about in the detected GCC installation architecture or triple, and the ways in which that differs from the target. When we find a GCC installation with a different triple from our target *but capable of targeting our target* through an option such as '-m64', we want to detect *that* case and change the paths within the GCC installation (and libstdc++ installation) to reflect this difference. This patch makes one function do this correctly. Subsequent commits will hoist the logic used here into the GCCInstallation utility, and then reuse it through the rest of the toolchains to fix the remaining places where this is currently happening. llvm-svn: 148852
* CrashReporterClient.h is back, but this time protected with __has_include. ↵Howard Hinnant2012-01-243-53/+32
| | | | | | Thanks for the suggestion Doug. The use is consistent with how the same header is used in llvm/lib/Support/PrettyStackTrace.cpp (though there autoconfig is used instead of __has_include). llvm-svn: 148851
* Small code cleanup/simplification in Sema::ClassifyName.Kaelyn Uhrain2012-01-241-7/+7
| | | | llvm-svn: 148850
* Sink assert-only variables into the assertsMatt Beaumont-Gay2012-01-241-16/+10
| | | | llvm-svn: 148849
* [libclang] When calling clang_getCursorReferenced on a class or protocolArgyrios Kyrtzidis2012-01-241-3/+11
| | | | | | | | | forward reference, do give an interface or protocol cursor back, don't give an 'UnexposedDecl' one. rdar://10743193 llvm-svn: 148848
* objc: Issue a generic diagnostic assigning to Fariborz Jahanian2012-01-244-12/+5
| | | | | | an objc object in any abi mode. llvm-svn: 148847
* [asan] enable asan only for the functions that have Attribute::AddressSafetyKostya Serebryany2012-01-244-4/+5
| | | | llvm-svn: 148846
* [analyzer] Add more C taint sources/sinks.Anna Zaks2012-01-243-22/+92
| | | | llvm-svn: 148844
* Address one part of the FIXME I introduced my switching the tripleChandler Carruth2012-01-242-15/+14
| | | | | | | | | | inside of GCCInstallation to be a proper llvm::Triple. This is still a touch ugly because we have to use it as a string in so many places, but I think on the whole the more structured representation is better. Comments of course welcome if this tradeoff isn't working for folks. llvm-svn: 148843
* The following patch adds __attribute__((no_address_safety_analysis)) which ↵Kostya Serebryany2012-01-247-0/+73
| | | | | | | | | | | | | | | will allow to disable address safety analysis (such as e.g. AddressSanitizer or SAFECode) for a specific function. When building with AddressSanitizer, add AddressSafety function attribute to every generated function except for those that have __attribute__((no_address_safety_analysis)). With this patch we will be able to 1. disable AddressSanitizer for a particular function 2. disable AddressSanitizer-hostile optimizations (such as some cases of load widening) when AddressSanitizer is on. llvm-svn: 148842
* At least within these classes, consistently spell 'GCC' as 'GCC'.Chandler Carruth2012-01-242-24/+24
| | | | | | | | I can't read Java-style 'Gcc' acronyms. ;] No functionality changed. llvm-svn: 148840
* Start hoisting the logic for computing the target triple into its ownChandler Carruth2012-01-242-18/+28
| | | | | | | | | | | | | | | | | | | | | | function. The logic for this, and I want to emphasize that this is the logic for computing the *target* triple, is currently scattered throughout various different HostInfo classes ToolChain factoring functions. Best part, it is largely *duplicated* there. The goal is to hoist all of that up to here where we can deal with it once, and in a consistent manner. Unfortunately, this uncovers more fun problems: the ToolChains assume that the *actual* target triple is the one passed into them by these factory functions, while the *host* triple is the one in the driver. This already was a lie, and a damn lie, when the '-target' flag was specified. It only really worked when the difference stemmed from '-m32' and '-m64' flags. I'll have to fix that (and remove all the FIXMEs I've introduced here to document the problem) before I can finish hoisting the target-calculation logic. It's bugs all the way down today it seems... llvm-svn: 148839
* Promote the extension warning for attempts to catch a reference orDouglas Gregor2012-01-245-20/+10
| | | | | | | | | | pointer to incomplete type from an ExtWarn to an error. We put the ExtWarn in place as part of a workaround for Boost (PR6527), but it (1) doesn't actually match a GCC extension and (2) has been fixed for two years in Boost, and (3) causes us to emit code that fails badly at run time, so it's a bad idea to keep it. Fixes PR11803. llvm-svn: 148838
* NEON VST4(one lane) assembly parsing and encoding.Jim Grosbach2012-01-243-11/+181
| | | | llvm-svn: 148836
* Widen the instruction encoder that TblGen emits to a 64 bits, which should ↵Owen Anderson2012-01-248-14/+14
| | | | | | accomodate every target I can think of offhand. llvm-svn: 148833
* NEON VLD4(one lane) assembly parsing and encoding.Jim Grosbach2012-01-243-11/+278
| | | | llvm-svn: 148832
* When importing a RecordDecl as a DeclContext, make sure that we pullDouglas Gregor2012-01-241-8/+38
| | | | | | in the definition as well. llvm-svn: 148831
* Remove dependence upon std::exception_ptr from the ↵Howard Hinnant2012-01-242-23/+38
| | | | | | default_terminate_handler. Recovered the equivalent functionality at a lower level. llvm-svn: 148830
* Forgot to include this file in the last commit: Move kOurExceptionClass and ↵Howard Hinnant2012-01-241-2/+0
| | | | | | kOurDependentExceptionClass from source to header so that they can be used in multiple sources. This is a private header, these constants are not publicly exposed. llvm-svn: 148829
* Move kOurExceptionClass and kOurDependentExceptionClass from source to ↵Howard Hinnant2012-01-242-3/+4
| | | | | | header so that they can be used in multiple sources. This is a private header, these constants are not publicly exposed. llvm-svn: 148827
* Fix old doxygen comment.Jakob Stoklund Olesen2012-01-241-2/+1
| | | | llvm-svn: 148825
* Add an (interleave A, B, ...) SetTheory operator.Jakob Stoklund Olesen2012-01-243-0/+29
| | | | | | This will interleave the elements from two or more lists. llvm-svn: 148824
* objc: issue error if assigning objects in fragile-abi too.Fariborz Jahanian2012-01-243-4/+23
| | | | | | // rdar://10731065 llvm-svn: 148823
* Undo an over zealous rename. This bit of the CMake build really isChandler Carruth2012-01-243-6/+9
| | | | | | | dealing in the host triple, be honest about it and document the decision to default the target triple to the host triple unless overridden. llvm-svn: 148822
* NEON Two-operand assembly aliases for VSRA.Jim Grosbach2012-01-242-33/+110
| | | | llvm-svn: 148821
* Remove redundant test file.Jim Grosbach2012-01-241-98/+0
| | | | llvm-svn: 148820
* NEON Two-operand assembly aliases for VSLI.Jim Grosbach2012-01-242-16/+52
| | | | llvm-svn: 148819
* NEON Two-operand assembly aliases for VSRI.Jim Grosbach2012-01-242-16/+52
| | | | llvm-svn: 148818
OpenPOWER on IntegriCloud