]> granicus.if.org Git - clang/log
clang
16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

16 years agoDon't try to call getFileCharacteristic if the function declaration has an invalid...
Anders Carlsson [Sun, 31 May 2009 20:19:23 +0000 (20:19 +0000)]
Don't try to call getFileCharacteristic if the function declaration has an invalid source location (as is the case for the global allocation functions.

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

16 years agoFix an off by one error when trying to perform copy initialization of operator new...
Anders Carlsson [Sun, 31 May 2009 19:49:47 +0000 (19:49 +0000)]
Fix an off by one error when trying to perform copy initialization of operator new and operator delete arguments. Sebastian, please review.

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

16 years agoDowngrade an error about "return in a no-return function" from being
Chris Lattner [Sun, 31 May 2009 19:32:13 +0000 (19:32 +0000)]
Downgrade an error about "return in a no-return function" from being
an error to being a warning that defaults to error.  If you want this to
be a warning, you have to explicitly pass -Winvalid-noreturn to clang to
map it back to a warning.

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

16 years agoDisallow exception specs on typedefs.
Sebastian Redl [Sun, 31 May 2009 11:47:27 +0000 (11:47 +0000)]
Disallow exception specs on typedefs.

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

16 years agoFix for PR4285: allow intializing a const wchar_t array with a wide
Eli Friedman [Sun, 31 May 2009 10:54:53 +0000 (10:54 +0000)]
Fix for PR4285: allow intializing a const wchar_t array with a wide
string.

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

16 years agoInitial infrastructure for class template partial specialization. Here
Douglas Gregor [Sun, 31 May 2009 09:31:02 +0000 (09:31 +0000)]
Initial infrastructure for class template partial specialization. Here
we have the basics of declaring and storing class template partial
specializations, matching class template partial specializations at
instantiation time via (limited) template argument deduction, and
using the class template partial specialization's pattern for
instantiation.

This patch is enough to make a simple is_pointer type trait work, but
not much else.

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

16 years agoAdd a little FIXME for C++ class printing
Douglas Gregor [Sun, 31 May 2009 07:13:39 +0000 (07:13 +0000)]
Add a little FIXME for C++ class printing

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

16 years agoUnbreak the clang build by applying the same temporary
Duncan Sands [Sun, 31 May 2009 04:09:57 +0000 (04:09 +0000)]
Unbreak the clang build by applying the same temporary
workaround for machine code emitter changes as was used
in llvm-gcc.

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

16 years agoAdd a new function for emitting new functions.
Anders Carlsson [Sun, 31 May 2009 01:40:14 +0000 (01:40 +0000)]
Add a new function for emitting new functions.

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

16 years agoEmit destructors correctly for temporaries.
Anders Carlsson [Sun, 31 May 2009 00:34:10 +0000 (00:34 +0000)]
Emit destructors correctly for temporaries.

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

16 years agoWhen possible, don't emit the cleanup block. Instead, just move the instructions...
Anders Carlsson [Sun, 31 May 2009 00:33:20 +0000 (00:33 +0000)]
When possible, don't emit the cleanup block. Instead, just move the instructions to the current block.

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

16 years agoImplement VisitCXXExprWithTemporaries for complex expressions.
Anders Carlsson [Sun, 31 May 2009 00:12:05 +0000 (00:12 +0000)]
Implement VisitCXXExprWithTemporaries for complex expressions.

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