]> granicus.if.org Git - clang/log
clang
15 years agoFix a case when the TemplateArgs vector can be empty.
Anders Carlsson [Fri, 5 Jun 2009 02:12:32 +0000 (02:12 +0000)]
Fix a case when the TemplateArgs vector can be empty.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72911 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix -Asserts build warnings.
Daniel Dunbar [Fri, 5 Jun 2009 02:03:25 +0000 (02:03 +0000)]
Fix -Asserts build warnings.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72910 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSeveral improvements to template argument deduction:
Douglas Gregor [Fri, 5 Jun 2009 00:53:49 +0000 (00:53 +0000)]
Several improvements to template argument deduction:
  - Once we have deduced template arguments for a class template partial
    specialization, we use exactly those template arguments for instantiating
    the definition of the class template partial specialization.
  - Added template argument deduction for non-type template parameters.
  - Added template argument deduction for dependently-sized array types.

With these changes, we can now implement, e.g., the remove_reference
type trait. Also, Daniel's Ackermann template metaprogram now compiles
properly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72909 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTest for parsing #pragma weak.
Eli Friedman [Fri, 5 Jun 2009 00:50:43 +0000 (00:50 +0000)]
Test for parsing #pragma weak.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72908 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd parser support for #pragma weak.
Eli Friedman [Fri, 5 Jun 2009 00:49:58 +0000 (00:49 +0000)]
Add parser support for #pragma weak.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72907 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoNoRedZone attribute test case.
Devang Patel [Thu, 4 Jun 2009 23:45:55 +0000 (23:45 +0000)]
NoRedZone attribute test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72905 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSet function attribute llvm::Attribute::NoRedZone appropriately.
Devang Patel [Thu, 4 Jun 2009 23:32:02 +0000 (23:32 +0000)]
Set function attribute llvm::Attribute::NoRedZone appropriately.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72902 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix up this compatibility hack to be more compatible with gcc.
Eli Friedman [Thu, 4 Jun 2009 23:03:07 +0000 (23:03 +0000)]
Fix up this compatibility hack to be more compatible with gcc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72901 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMove a couple Darwin-specific defines into getDarwinDefines.
Eli Friedman [Thu, 4 Jun 2009 23:00:29 +0000 (23:00 +0000)]
Move a couple Darwin-specific defines into getDarwinDefines.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72900 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse the correct indentation for DeclTemplate.cpp
Anders Carlsson [Thu, 4 Jun 2009 21:48:59 +0000 (21:48 +0000)]
Use the correct indentation for DeclTemplate.cpp

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72892 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMinor simplification.
Eli Friedman [Thu, 4 Jun 2009 20:23:20 +0000 (20:23 +0000)]
Minor simplification.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72887 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4326: Handle constant evaluation for void* pointer subtraction
Eli Friedman [Thu, 4 Jun 2009 20:04:03 +0000 (20:04 +0000)]
PR4326: Handle constant evaluation for void* pointer subtraction
correctly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72886 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoClean up builtin lists, add a few new builtins. (I re-sorted the
Eli Friedman [Thu, 4 Jun 2009 19:35:30 +0000 (19:35 +0000)]
Clean up builtin lists, add a few new builtins.  (I re-sorted the
string.h builtins to be in the same order as the list in the C99
standard.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72882 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPut "Language Extensions" and "C++ status" in the regular info section.
Daniel Dunbar [Thu, 4 Jun 2009 18:39:08 +0000 (18:39 +0000)]
Put "Language Extensions" and "C++ status" in the regular info section.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72879 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMention unsupported GCC duplicate-definition-with-inline extension.
Daniel Dunbar [Thu, 4 Jun 2009 18:37:52 +0000 (18:37 +0000)]
Mention unsupported GCC duplicate-definition-with-inline extension.

Also, link users manual from the main web page.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72878 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMore refactoring/cleanup of objc ivars.
Fariborz Jahanian [Thu, 4 Jun 2009 17:08:55 +0000 (17:08 +0000)]
More refactoring/cleanup of objc ivars.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72871 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake ReplaceUsesOfNonProtoTypeWithRealFunction verify that a call is *to* the
Chris Lattner [Thu, 4 Jun 2009 16:47:43 +0000 (16:47 +0000)]
Make ReplaceUsesOfNonProtoTypeWithRealFunction verify that a call is *to* the
function of interest, not an operand of it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72869 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDefineBuiltinMacro is always passed two args, remove the defaulted third
Chris Lattner [Thu, 4 Jun 2009 16:47:09 +0000 (16:47 +0000)]
DefineBuiltinMacro is always passed two args, remove the defaulted third
one.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72868 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoforward -fno-color-diagnostics to clang-cc.
Torok Edwin [Thu, 4 Jun 2009 07:27:53 +0000 (07:27 +0000)]
forward -fno-color-diagnostics to clang-cc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72856 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd ANSI color support for clang.
Torok Edwin [Thu, 4 Jun 2009 07:18:23 +0000 (07:18 +0000)]
Add ANSI color support for clang.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72855 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd DeclPrinter.cpp
Anders Carlsson [Thu, 4 Jun 2009 05:38:41 +0000 (05:38 +0000)]
Add DeclPrinter.cpp

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72849 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMinor improvements to template parameter writing.
Anders Carlsson [Thu, 4 Jun 2009 05:37:43 +0000 (05:37 +0000)]
Minor improvements to template parameter writing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72848 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoEliminate a warning
Douglas Gregor [Thu, 4 Jun 2009 05:28:55 +0000 (05:28 +0000)]
Eliminate a warning

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72846 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTemplate argument deduction for incomplete and constant array types. Doug, please...
Anders Carlsson [Thu, 4 Jun 2009 04:11:30 +0000 (04:11 +0000)]
Template argument deduction for incomplete and constant array types. Doug, please review.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72844 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse PushConditionalTempDestruction/PopConditionalTempDestruction for the ternary...
Anders Carlsson [Thu, 4 Jun 2009 03:00:32 +0000 (03:00 +0000)]
Use PushConditionalTempDestruction/PopConditionalTempDestruction for the ternary operator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72842 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse conditional temp destruction for || and &&.
Anders Carlsson [Thu, 4 Jun 2009 02:53:13 +0000 (02:53 +0000)]
Use conditional temp destruction for || and &&.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72838 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake PushCXXTemporary and PopCXXTemporary handle conditional temporaries.
Anders Carlsson [Thu, 4 Jun 2009 02:47:33 +0000 (02:47 +0000)]
Make PushCXXTemporary and PopCXXTemporary handle conditional temporaries.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72837 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd PushConditionalTempDestruction/PopConditionalTempDestruction.
Anders Carlsson [Thu, 4 Jun 2009 02:22:12 +0000 (02:22 +0000)]
Add PushConditionalTempDestruction/PopConditionalTempDestruction.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72835 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake sure to call FullExpr before parsing anything else.
Anders Carlsson [Thu, 4 Jun 2009 02:18:15 +0000 (02:18 +0000)]
Make sure to call FullExpr before parsing anything else.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72834 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse the right indentation for CGCXXTemp.cpp
Anders Carlsson [Thu, 4 Jun 2009 02:08:31 +0000 (02:08 +0000)]
Use the right indentation for CGCXXTemp.cpp

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72832 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake sure to push a cleanup block.
Anders Carlsson [Thu, 4 Jun 2009 02:08:08 +0000 (02:08 +0000)]
Make sure to push a cleanup block.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72831 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCleanup/Refactoring of ivar collection. No change in functionality.
Fariborz Jahanian [Thu, 4 Jun 2009 01:19:09 +0000 (01:19 +0000)]
Cleanup/Refactoring of ivar collection. No change in functionality.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72827 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTemplate argument deduction for references
Douglas Gregor [Thu, 4 Jun 2009 00:21:18 +0000 (00:21 +0000)]
Template argument deduction for references

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72822 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate Xcode project
Douglas Gregor [Thu, 4 Jun 2009 00:04:42 +0000 (00:04 +0000)]
Update Xcode project

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72820 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoWhen performing template argument deduction, ensure that multiple
Douglas Gregor [Thu, 4 Jun 2009 00:03:07 +0000 (00:03 +0000)]
When performing template argument deduction, ensure that multiple
deductions of the same template parameter are equivalent. This allows
us to implement the is_same type trait (!).

Also, move template argument deduction into its own file and update a
few build systems with this change (grrrr).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72819 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPTH -> PCH in the user manual
Douglas Gregor [Wed, 3 Jun 2009 22:37:00 +0000 (22:37 +0000)]
PTH -> PCH in the user manual

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72815 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix cmake builds.
Mike Stump [Wed, 3 Jun 2009 22:24:28 +0000 (22:24 +0000)]
Fix cmake builds.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72814 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoHTML tweak to get the PCH internals documentation to display correctly
Douglas Gregor [Wed, 3 Jun 2009 21:57:43 +0000 (21:57 +0000)]
HTML tweak to get the PCH internals documentation to display correctly

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72813 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFinished the PCH design and implementation documentation
Douglas Gregor [Wed, 3 Jun 2009 21:55:35 +0000 (21:55 +0000)]
Finished the PCH design and implementation documentation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72812 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDocument the integration points for precompiled headers
Douglas Gregor [Wed, 3 Jun 2009 21:41:31 +0000 (21:41 +0000)]
Document the integration points for precompiled headers

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72809 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4316: Fix IRGen for cast-to-union extension.
Eli Friedman [Wed, 3 Jun 2009 20:45:06 +0000 (20:45 +0000)]
PR4316: Fix IRGen for cast-to-union extension.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72803 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd more retain-checker tests for GC mode when using NSMakeCollectable.
Ted Kremenek [Wed, 3 Jun 2009 19:19:06 +0000 (19:19 +0000)]
Add more retain-checker tests for GC mode when using NSMakeCollectable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72799 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMore temporary work.
Anders Carlsson [Wed, 3 Jun 2009 19:05:16 +0000 (19:05 +0000)]
More temporary work.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72796 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4308: Fix support for -m32/-m64 on Linux.
Eli Friedman [Wed, 3 Jun 2009 18:59:56 +0000 (18:59 +0000)]
PR4308: Fix support for -m32/-m64 on Linux.

I'll look into cleaning this up a bit as a followup.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72794 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoStore more information about live temporaries. No functionality change for now.
Anders Carlsson [Wed, 3 Jun 2009 18:54:26 +0000 (18:54 +0000)]
Store more information about live temporaries. No functionality change for now.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72793 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMove code generation of C++ temporaries into a new file.
Anders Carlsson [Wed, 3 Jun 2009 18:40:21 +0000 (18:40 +0000)]
Move code generation of C++ temporaries into a new file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72792 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd a table of contents to the PCH design document
Douglas Gregor [Wed, 3 Jun 2009 18:35:59 +0000 (18:35 +0000)]
Add a table of contents to the PCH design document

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72791 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDocument the PCH representation of statements and expressions
Douglas Gregor [Wed, 3 Jun 2009 18:26:16 +0000 (18:26 +0000)]
Document the PCH representation of statements and expressions

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72790 91177308-0d34-0410-b5e6-96231b3b80d8

15 years ago(llvm up) Switch to using StandardPasses.h
Daniel Dunbar [Wed, 3 Jun 2009 18:01:18 +0000 (18:01 +0000)]
(llvm up) Switch to using StandardPasses.h
 - One functionality change, the LoopIndexSplit pass is now reenabled (it was
   disabled in r60089 but we forgot to reenable it).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72787 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPlace the GC attribute on the same relative pointer
Fariborz Jahanian [Wed, 3 Jun 2009 17:15:17 +0000 (17:15 +0000)]
Place the GC attribute on the same relative pointer
position to make it consistant and to match gcc's behavior,
by placing it at the inner-most pointer.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72784 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Support -mllvm; this just forwards options to clang-cc.
Daniel Dunbar [Wed, 3 Jun 2009 16:16:27 +0000 (16:16 +0000)]
Driver: Support -mllvm; this just forwards options to clang-cc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72780 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFill in some gaps in the precompiled headers documentation
Douglas Gregor [Wed, 3 Jun 2009 16:06:22 +0000 (16:06 +0000)]
Fill in some gaps in the precompiled headers documentation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72779 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCompile fix needed by the solaris system gcc.
Duncan Sands [Wed, 3 Jun 2009 14:28:20 +0000 (14:28 +0000)]
Compile fix needed by the solaris system gcc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72772 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMinor cleanup for implicit int warnings.
Eli Friedman [Wed, 3 Jun 2009 12:22:01 +0000 (12:22 +0000)]
Minor cleanup for implicit int warnings.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72770 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix up a bunch of warnings to use ExtWarn so they interact with
Eli Friedman [Wed, 3 Jun 2009 12:07:19 +0000 (12:07 +0000)]
Fix up a bunch of warnings to use ExtWarn so they interact with
-pedantic-errors correctly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72769 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd support for -Wempty-body.
Eli Friedman [Wed, 3 Jun 2009 11:10:10 +0000 (11:10 +0000)]
Add support for -Wempty-body.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72766 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoBack out r72764; I should have looked more carefully before committing
Eli Friedman [Wed, 3 Jun 2009 10:41:42 +0000 (10:41 +0000)]
Back out r72764; I should have looked more carefully before committing
this.  The correct replacement for "Y" and "Yt" is "x".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72765 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR3678: Add support for "Yt" asm register constraint.
Eli Friedman [Wed, 3 Jun 2009 10:33:05 +0000 (10:33 +0000)]
PR3678: Add support for "Yt" asm register constraint.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72764 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4290: Handle vfprintf in a way that doesn't give any diagnostics for
Eli Friedman [Wed, 3 Jun 2009 09:54:50 +0000 (09:54 +0000)]
PR4290: Handle vfprintf in a way that doesn't give any diagnostics for
valid declarations and doesn't give an error for autoconf-style invalid
redeclarations.  This isn't quite ideal, but I don't see any other way
easy way to handle it.  (The only thing I can think of that's reasonably
general is adding a new builtin type FILETy which is only compatible
with a type equivalent to FILE, and that seems like overkill.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72760 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoemit ORIGINAL_FILE_NAME record ID to blockinfo block.
Zhongxing Xu [Wed, 3 Jun 2009 09:23:28 +0000 (09:23 +0000)]
emit ORIGINAL_FILE_NAME record ID to blockinfo block.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72759 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse "()" instead of "(void)" when pretty-printing a parameter-less function type...
Argyrios Kyrtzidis [Wed, 3 Jun 2009 02:06:50 +0000 (02:06 +0000)]
Use "()" instead of "(void)" when pretty-printing a parameter-less function type for C++.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72747 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMore PCH documentation
Douglas Gregor [Tue, 2 Jun 2009 22:08:07 +0000 (22:08 +0000)]
More PCH documentation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72743 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd clang-cc support for -disable-llvm-optzns.
Daniel Dunbar [Tue, 2 Jun 2009 22:07:45 +0000 (22:07 +0000)]
Add clang-cc support for -disable-llvm-optzns.
 - Avoids running any LLVM optimizations, even at -O2, etc., while still keeping
   any language changes these optimizations imply.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72742 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDiagnose misuse of __strong attribute in a redeclaration.
Fariborz Jahanian [Tue, 2 Jun 2009 20:58:58 +0000 (20:58 +0000)]
Diagnose misuse of __strong attribute in a redeclaration.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72737 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIssue diagnostics on __weak attribute mismatch.
Fariborz Jahanian [Tue, 2 Jun 2009 18:32:00 +0000 (18:32 +0000)]
Issue diagnostics on __weak attribute mismatch.
Fixes an error recovery issue which caused a crash.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72733 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMissing file for __builtin_unwind_init support.
Eli Friedman [Tue, 2 Jun 2009 09:39:16 +0000 (09:39 +0000)]
Missing file for __builtin_unwind_init support.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72728 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd support for __builtin_unwind_init.
Eli Friedman [Tue, 2 Jun 2009 09:37:50 +0000 (09:37 +0000)]
Add support for __builtin_unwind_init.

Also, committing an #if 0'ed __builtin_setjmp and __builtin_longjmp
implementation I've had sitting in my tree for a while.  I haven't
enabled it because the LLVM backend support isn't complete yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72727 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4142: Add %m format string specifier.
Eli Friedman [Tue, 2 Jun 2009 08:36:19 +0000 (08:36 +0000)]
PR4142: Add %m format string specifier.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72726 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoA couple minor corrections to the "GCC extensions not implemented yet"
Eli Friedman [Tue, 2 Jun 2009 08:21:31 +0000 (08:21 +0000)]
A couple minor corrections to the "GCC extensions not implemented yet"
section of the users manual.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72725 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4288: Make -dD (dump macros with preprocessed source) play nicely with
Eli Friedman [Tue, 2 Jun 2009 07:55:39 +0000 (07:55 +0000)]
PR4288: Make -dD (dump macros with preprocessed source) play nicely with
# line directives.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72724 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a silly typo in my previous objc_gc merging patch.
Eli Friedman [Tue, 2 Jun 2009 07:45:37 +0000 (07:45 +0000)]
Fix a silly typo in my previous objc_gc merging patch.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72723 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIf we recognize alloca, treat it as a builtin. This fixes uses of
Eli Friedman [Tue, 2 Jun 2009 07:10:30 +0000 (07:10 +0000)]
If we recognize alloca, treat it as a builtin.  This fixes uses of
alloca without declaring it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72719 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd builtin declarations for the variants of sin and cos.
Eli Friedman [Tue, 2 Jun 2009 07:06:02 +0000 (07:06 +0000)]
Add builtin declarations for the variants of sin and cos.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72718 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd aliases for a couple of SSE intrinsics. Patch by Ed Schouten.
Eli Friedman [Tue, 2 Jun 2009 05:55:48 +0000 (05:55 +0000)]
Add aliases for a couple of SSE intrinsics.  Patch by Ed Schouten.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72717 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd --shared option.
Eli Friedman [Tue, 2 Jun 2009 05:46:32 +0000 (05:46 +0000)]
Add --shared option.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72716 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCleaned-up version of gc attribute type merging. I still don't like it
Eli Friedman [Tue, 2 Jun 2009 05:28:56 +0000 (05:28 +0000)]
Cleaned-up version of gc attribute type merging.  I still don't like it
very much, but I have a feeling we're never going to have an
implementation that makes sense because of compatibility issues.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72715 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove test which doesn't pass with gcc.
Eli Friedman [Tue, 2 Jun 2009 05:24:36 +0000 (05:24 +0000)]
Remove test which doesn't pass with gcc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72714 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd floating point details to PIC16 Target.
Sanjiv Gupta [Tue, 2 Jun 2009 04:43:46 +0000 (04:43 +0000)]
Add floating point details to PIC16 Target.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72713 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoThis patch attempts to fix the merging of __strong/__weak attributes
Fariborz Jahanian [Tue, 2 Jun 2009 01:40:22 +0000 (01:40 +0000)]
This patch attempts to fix the merging of __strong/__weak attributes
in merge_types. It is incomplete. We probably want to issue
a warning if user attempts to change the attribute from __weak to
__strong or vice-vera. It also assumes that a __weak/__strong
attribute can not be specified with other (currently one) type
attriute.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72711 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix rare failure of .ver-svn creation, it has a dependency that the output
Daniel Dunbar [Mon, 1 Jun 2009 22:15:35 +0000 (22:15 +0000)]
Fix rare failure of .ver-svn creation, it has a dependency that the output
directory exist.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72704 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoA corner case of objc2 gc's write-barrier generation
Fariborz Jahanian [Mon, 1 Jun 2009 21:29:32 +0000 (21:29 +0000)]
A corner case of objc2 gc's write-barrier generation
for the Next runtime.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72703 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFixed a test case which I am to blame for making it
Fariborz Jahanian [Mon, 1 Jun 2009 17:40:54 +0000 (17:40 +0000)]
Fixed a test case which I am to blame for making it
not runaable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72695 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate test case.
Daniel Dunbar [Mon, 1 Jun 2009 17:27:37 +0000 (17:27 +0000)]
Update test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72694 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a bug in hasEmptyExceptionSpec. (Thanks Sebastian for noticing).
Anders Carlsson [Mon, 1 Jun 2009 15:02:12 +0000 (15:02 +0000)]
Fix a bug in hasEmptyExceptionSpec. (Thanks Sebastian for noticing).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72691 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4289: Make sure "&func" has the right LLVM type when "func" is a
Eli Friedman [Mon, 1 Jun 2009 10:04:20 +0000 (10:04 +0000)]
PR4289: Make sure "&func" has the right LLVM type when "func" is a
K&R-style definition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72690 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4287: allow a variadic prototype to make a subsequent K&R style
Eli Friedman [Mon, 1 Jun 2009 09:24:59 +0000 (09:24 +0000)]
PR4287: allow a variadic prototype to make a subsequent K&R style
definition variadic.  I'm not completely sure it's legal, but the
standard can be interpreted as making it legal, and gcc seems to think
it's legal, so I didn't add an extension warning.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72689 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSimplify run line.
Eli Friedman [Mon, 1 Jun 2009 08:55:08 +0000 (08:55 +0000)]
Simplify run line.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72687 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPR4283: Don't truncate multibyte character constants in the
Eli Friedman [Mon, 1 Jun 2009 05:25:02 +0000 (05:25 +0000)]
PR4283: Don't truncate multibyte character constants in the
preprocessor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72686 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDisable type merging with gc attributes. This has a number of nasty
Eli Friedman [Mon, 1 Jun 2009 01:22:52 +0000 (01:22 +0000)]
Disable type merging with gc attributes.  This has a number of nasty
properties at the moment:

1. It allows stuff like "__strong id x; __weak id x;".

2. For constructs like "__strong id x; id x;", subsequent references to
x lose the objc_gc attribute.

3. This incorrectly allows merges involving the address_space attribute.

4. Constructs like "id x; /* some code using x */ __weak id x;" don't
apply the objc_gc attribute consistently to all uses of x.

The first three can probably be fixed relatively easily; the fourth
would be extremely difficult to fix.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72683 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUnify coding style.
Zhongxing Xu [Mon, 1 Jun 2009 00:50:23 +0000 (00:50 +0000)]
Unify coding style.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72682 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse a reference to modify the DeclIDs map.
Zhongxing Xu [Mon, 1 Jun 2009 00:49:11 +0000 (00:49 +0000)]
Use a reference to modify the DeclIDs map.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72681 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAfter spending 15 minutes trying to figure out why this was crashing, I realized...
Anders Carlsson [Mon, 1 Jun 2009 00:40:08 +0000 (00:40 +0000)]
After spending 15 minutes trying to figure out why this was crashing, I realized it was a bug in the test case :)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72680 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a thinko.
Anders Carlsson [Mon, 1 Jun 2009 00:26:14 +0000 (00:26 +0000)]
Fix a thinko.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72679 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCheck for null correctly for new expressions.
Anders Carlsson [Mon, 1 Jun 2009 00:05:16 +0000 (00:05 +0000)]
Check for null correctly for new expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72678 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoImprove irgen of 'new' further.
Anders Carlsson [Sun, 31 May 2009 21:53:59 +0000 (21:53 +0000)]
Improve irgen of 'new' further.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72677 91177308-0d34-0410-b5e6-96231b3b80d8

15 years ago...and aggregate POD types.
Anders Carlsson [Sun, 31 May 2009 21:12:26 +0000 (21:12 +0000)]
...and aggregate POD types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72676 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSupport for complex types.
Anders Carlsson [Sun, 31 May 2009 21:07:58 +0000 (21:07 +0000)]
Support for complex types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72675 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoBetter support for scalar POD types in 'new' expressions.
Anders Carlsson [Sun, 31 May 2009 20:56:36 +0000 (20:56 +0000)]
Better support for scalar POD types in 'new' expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72674 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake sure to copy back arguments that can be changed by FindAllocationOverload. This...
Anders Carlsson [Sun, 31 May 2009 20:26:12 +0000 (20:26 +0000)]
Make sure to copy back arguments that can be changed by FindAllocationOverload. This fixes placement new. (Sebastian, please review).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72673 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoVery basic irgen support for new expressions.
Anders Carlsson [Sun, 31 May 2009 20:21:44 +0000 (20:21 +0000)]
Very basic irgen support for new expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72672 91177308-0d34-0410-b5e6-96231b3b80d8