summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Revert r131672 until __underlying_type is properly implemented in theAlexis Hunt2011-05-191-1/+0
| | | | | | template case. llvm-svn: 131692
* Implement a __has_feature for __underlying_typeAlexis Hunt2011-05-191-0/+1
| | | | llvm-svn: 131672
* Correction for r131662, the GNU as option is --fatal-warnings.Joerg Sonnenberger2011-05-191-1/+1
| | | | llvm-svn: 131671
* Support -fatal-warnings for the assembler frontendJoerg Sonnenberger2011-05-191-0/+3
| | | | llvm-svn: 131662
* Fix PR9941 again, this time for templates.Sebastian Redl2011-05-191-2/+4
| | | | llvm-svn: 131640
* - Fixes openSUSE detection for 11.4 and upcoming 12.1David Chisnall2011-05-191-2/+9
| | | | | | | | - Adds gcc 4.6 to gcc list so that linking will work on openSUSE 12.1 Patch by İsmail Dönmez! llvm-svn: 131637
* Add paths used by openSuSE 12.1David Chisnall2011-05-191-0/+5
| | | | | | Patch by Ismail Dönmez! llvm-svn: 131636
* Implement __underlying_type for libc++.Alexis Hunt2011-05-198-2/+78
| | | | llvm-svn: 131633
* Reapply r121528, fixing PR9941 by delaying the exception specification check ↵Sebastian Redl2011-05-193-8/+74
| | | | | | for destructors until the class is complete and destructors have been adjusted. llvm-svn: 131632
* Teach static analyzer to analyze Objective-C methods in category ↵Ted Kremenek2011-05-191-4/+6
| | | | | | implementations. llvm-svn: 131614
* Make __builtin_shufflevector and -ftrapv work correctly together. PR9945.Eli Friedman2011-05-191-11/+5
| | | | llvm-svn: 131611
* After consultation with doug, revert r131515.Alexis Hunt2011-05-181-9/+1
| | | | llvm-svn: 131574
* Revert r121528 as it breaks a simple testcase, which leads to, amongAlexis Hunt2011-05-182-53/+8
| | | | | | other things, libcxx not building. llvm-svn: 131573
* Add ARMTargetCodeGenInfo::initDwarfEHRegSizeTable() defining 16 32bit regs.Roman Divacky2011-05-181-0/+16
| | | | llvm-svn: 131558
* Implement implicit exception specifications of destructors.Sebastian Redl2011-05-182-8/+53
| | | | llvm-svn: 131528
* Implement an additional fix for infinite recursion of deleted specialAlexis Hunt2011-05-181-58/+49
| | | | | | | | | | | | | | | | member functions by making sure that they're on the record before checking for deletion. Also make sure source locations are valid to avoid crashes. Unfortunately, the declare-all-implicit-members approach is still required in order to ensure that dependency loops do not result in incorrectly deleting functions (since they are to be deleted at the declaration point per the standard). Fixes PR9917 llvm-svn: 131520
* Force declaration of implicit members in C++0x mode.Alexis Hunt2011-05-181-1/+9
| | | | | | | | | | | | I hear at least one person crying out in anguish, but it's unfortunately necessary to avoid infinite loops with mutually dependent constructors trying to call each other and determine if they are deleted. It might be possible to go back to the old behavior if we can implement part-of-file lookups efficiently, or if a solution is discovered by which we can safely detect and avoid infinite recusion. llvm-svn: 131515
* Add some support for RHEL5 systems.Eric Christopher2011-05-172-1/+9
| | | | llvm-svn: 131505
* Conditionalize the use of 4.4 or 4.2 format based on the target.Bill Wendling2011-05-171-4/+6
| | | | | | <rdar://problem/8107317> llvm-svn: 131504
* Code cleanup of my last patch.Fariborz Jahanian2011-05-171-13/+8
| | | | llvm-svn: 131499
* Patch to fix IR-gen crash generating structure ABI which implementsFariborz Jahanian2011-05-174-16/+35
| | | | | | | user specified string class via -fconstant-string-class option. pr9914. llvm-svn: 131496
* Fix a nasty bug where inside StringLiteralParser:Argyrios Kyrtzidis2011-05-171-1/+18
| | | | | | | | | | | | | | | | 1. We would assume that the length of the string literal token was at least 2 2. We would allocate a buffer with size length-2 And when the stars aligned (one of which would be an invalid source location due to stale PCH) The length would be 0 and we would try to allocate a 4GB buffer. Add checks for this corner case and a bunch of asserts. (We really really should have had an assert for 1.). Note that there's no test case since I couldn't get one (it was major PITA to reproduce), maybe later. llvm-svn: 131492
* Do some safety checks.Argyrios Kyrtzidis2011-05-171-0/+6
| | | | llvm-svn: 131491
* For calls returning first-class aggregates, store by element instead of ↵Eli Friedman2011-05-171-2/+25
| | | | | | creating aggregate stores in common cases. This is more friendly to fast-isel. llvm-svn: 131490
* Revert r131434, my commit disabling the complete-object constructorJohn McCall2011-05-171-2/+1
| | | | | | | optimization for abstract classes; there was a misunderstanding, and it turns out that there are no kexts which rely on this. llvm-svn: 131489
* Fix some minor bugs and add a lot more test cases for defaultedAlexis Hunt2011-05-171-8/+12
| | | | | | | constructors, including two more FIXMEs (one of which I don't actually understand). llvm-svn: 131487
* Fix comment.Rafael Espindola2011-05-171-1/+1
| | | | llvm-svn: 131478
* The logic about -static is darwin only. For now assume that all nonRafael Espindola2011-05-171-15/+22
| | | | | | darwin assembler can handle cfi. Add a test. llvm-svn: 131464
* Revert r131447, see if it fixes the buildbot.Argyrios Kyrtzidis2011-05-171-2/+5
| | | | llvm-svn: 131450
* Inside isEmptyRecord function, for CXXRecordDecl just check the isEmpty bit.Argyrios Kyrtzidis2011-05-171-5/+2
| | | | llvm-svn: 131447
* Reapply the commits that r131401 reverted and add a fix for PR9927.Argyrios Kyrtzidis2011-05-171-23/+164
| | | | llvm-svn: 131446
* Set up appropriate context for member function.Devang Patel2011-05-171-0/+3
| | | | | | Radar 9440721 llvm-svn: 131441
* Implement some tests for defaulted constructors. To do this I had toAlexis Hunt2011-05-171-17/+19
| | | | | | suppress an error we were previously emitting on valid union code. llvm-svn: 131440
* Fix crash on C++ code when compiling with -finstrument-functions.Ted Kremenek2011-05-161-1/+1
| | | | llvm-svn: 131435
* Emit complete-object constructors for abstract classes in kext mode forJohn McCall2011-05-161-1/+2
| | | | | | reasons that honestly really, really need to be looked into. llvm-svn: 131434
* Implement the new C++0x rules for non-trivial things in unions so thatAlexis Hunt2011-05-162-17/+18
| | | | | | my defaulted constructor tests stop yelling at me about them. llvm-svn: 131432
* Pulls the common part of the clang-check example into Tooling, to allow new ↵Manuel Klimek2011-05-161-0/+81
| | | | | | tools to be implemented without duplicating the boilerplate. llvm-svn: 131425
* Make the triple an explicit argument of FindTargetProgramPath.Joerg Sonnenberger2011-05-165-21/+43
| | | | | | | | | | Preserve the original triple in the NetBSD toolchain when using -m32 or -m64 and the resulting effective target is different from the triple it started with. This allows -m32 to use the same assembler/linking in cross-compiling mode and avoids confusion about passing down target specific flags in that case like --32. llvm-svn: 131404
* Revert 131377, 131369 and 131365.Rafael Espindola2011-05-161-163/+23
| | | | | | 131365 caused PR9927. llvm-svn: 131401
* Fix another regression from the "skip vtable pointer initialization"Anders Carlsson2011-05-163-2/+4
| | | | | | | optimization. Make sure to require a vtable when trying to get the address of a VTT, otherwise we would never end up emitting the VTT. llvm-svn: 131400
* Don't actually emit calls to the reserved global placement new and deleteJohn McCall2011-05-161-28/+18
| | | | | | | | | operators; their semantics are guaranteed by the language. If someone wants to argue that freestanding compiles shouldn't recognize this, I might be convinceable. llvm-svn: 131395
* main() exists in hosted, not freestanding implementations. Fixes theAlexis Hunt2011-05-151-1/+1
| | | | | | build. llvm-svn: 131390
* Add a method for checking whether a function is one of the reserved globalJohn McCall2011-05-151-4/+28
| | | | | | | | placement allocation or deallocation functions. These functions cannot be replaced by the user and are exempt from the normal requirements on allocation functions (e.g. that they must return unaliased memory). llvm-svn: 131386
* Re-enable the fix for PR9181 now that all the edge cases are handled.Anders Carlsson2011-05-151-18/+70
| | | | llvm-svn: 131385
* When checking a set of template parameter lists against aDouglas Gregor2011-05-152-3/+8
| | | | | | | | | nested-name-specifier, re-evaluate the nested-name-specifier as if we were entering that context (which we did!), so that we'll resolve a template-id to a particular class template partial specialization. Fixes PR9913. llvm-svn: 131383
* The array-size operand to a new-expression is not necessarily a size_t.John McCall2011-05-152-142/+211
| | | | | | | It can be larger, it can be smaller, it can be signed, whatever. Handle all the crazy cases with grace and spirit. llvm-svn: 131378
* Fix MSVC build.Argyrios Kyrtzidis2011-05-151-1/+1
| | | | llvm-svn: 131377
* Make CGF.getContext() inlinable, because it's trivial, and optimizeJohn McCall2011-05-152-8/+36
| | | | | | hasAggregateLLVMType. llvm-svn: 131375
* More killing of std::vector.John McCall2011-05-152-40/+41
| | | | llvm-svn: 131374
* Use arrays and SmallVectors instead of std::vectors when building functionJohn McCall2011-05-155-193/+148
| | | | | | | types. Also, cache a translation of 'void' in CGM and provide a ptrdiff_t alias. No functionality change. llvm-svn: 131373
OpenPOWER on IntegriCloud