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