- May 12, 2009
-
-
Daniel Dunbar authored
spotted by Eli! llvm-svn: 71490
-
Daniel Dunbar authored
llvm-svn: 71484
-
- May 11, 2009
-
-
Daniel Dunbar authored
llvm-svn: 71461
-
- May 09, 2009
-
-
Chris Lattner authored
llvm-svn: 71361
-
Daniel Dunbar authored
- {return-types,single-args}-{32,64} pass the first 1k ABI tests with bit-fields enabled. llvm-svn: 71272
-
- May 08, 2009
-
-
Daniel Dunbar authored
to use a wide enough type. This might be wider than the "single element"'s type in the presence of padding bit-fields. - Darwin x86_32 now passes the first 1k ABI tests with bit-field generation enabled. llvm-svn: 71270
-
Daniel Dunbar authored
element" structures. llvm-svn: 71266
-
Daniel Dunbar authored
- This turns out to be a no-op now that most of the handling for everything else is in place. llvm-svn: 71261
-
Daniel Dunbar authored
- This eliminates 5/1000 failures on return-types-32, on the current ABITest config. llvm-svn: 71250
-
Chris Lattner authored
of the underlying _N builtin, not the the type of the pointee of the actual type. This ensures that atomics involving pointers end up using the correct integer type when they are resolved, avoiding aborts in codegen. llvm-svn: 71218
-
Chris Lattner authored
semantic rules that gcc and icc use. This implements the variadic and concrete versions as builtins and has sema do the disambiguation. There are probably a bunch of details to finish up but this seems like a large monotonic step forward :) llvm-svn: 71212
-
Eli Friedman authored
llvm-svn: 71194
-
- May 06, 2009
-
-
Daniel Dunbar authored
- This is a WIP... - This adds -march= handling to the driver, and fixes the defaulting of -mcpu on Darwin (which was using the wrong test). Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as -target-feature [+-]name In clang-cc, communicate with the (clang) target to discover the legal features of a target, and the features which are enabled based on -mcpu. This is currently hardcoded just enough to not be a feature regression, we need to get this information from the backend's TableGen information somehow. This is used to construct the full list of features which are being used, which is in turn used to initialize the predefines. llvm-svn: 71061
-
- May 05, 2009
-
-
Chris Lattner authored
to go back and clean up existing uses of the bitcasted function. This is not just an optimization: it is required for correctness to get always inline functions to work, see testcases in function-attributes.c. llvm-svn: 70971
-
- May 04, 2009
-
-
Eli Friedman authored
llvm-svn: 70825
-
- May 03, 2009
-
-
Eli Friedman authored
llvm-svn: 70794
-
Eli Friedman authored
llvm-svn: 70786
-
Chris Lattner authored
this fixes http://llvm.org/bugs/show_bug.cgi?id=3373#c20 llvm-svn: 70685
-
Chris Lattner authored
from the asm string, but reject references to the smaller one. llvm-svn: 70679
-
Chris Lattner authored
the input. This is part of PR3373. llvm-svn: 70677
-
Daniel Dunbar authored
llvm-svn: 70676
-
Chris Lattner authored
like bitfields. incidentally llvm-gcc crashes on this sort of thing also. :) llvm-svn: 70675
-
Chris Lattner authored
llvm-svn: 70672
-
- May 01, 2009
-
-
Douglas Gregor authored
llvm-svn: 70571
-
Douglas Gregor authored
llvm-svn: 70543
-
Mike Stump authored
Radar 6838889 llvm-svn: 70525
-
Anders Carlsson authored
llvm-svn: 70523
-
- Apr 30, 2009
-
-
Eli Friedman authored
constant initializers. llvm-svn: 70483
-
Chris Lattner authored
have support for __divti3 and friends. llvm-svn: 70480
-
Chris Lattner authored
compatible with VC++ and GCC. The codegen/mangling angle hasn't been fully ironed out yet. Note that we accept int128_t even in 32-bit mode, unlike gcc. llvm-svn: 70464
-
- Apr 28, 2009
-
-
Douglas Gregor authored
mode and in the presence of __gnu_inline__ attributes. This should fix both PR3989 and PR4069. As part of this, we now keep track of all of the attributes attached to each declaration even after we've performed declaration merging. This fixes PR3264. llvm-svn: 70292
-
Eli Friedman authored
scheme to be more useful. The new scheme introduces a set of categories that should be more readable, and also reflects what we want to consider as an extension more accurately. Specifically, it makes the "what is a keyword" determination accurately reflect whether the keyword is a GNU or Microsoft extension. I also introduced separate flags for keyword aliases; this is useful because the classification of the aliases is mostly unrelated to the classification of the original keyword. This patch treats anything that's in the implementation namespace (prefixed with "__", or "_X" where "X" is any upper-case letter) as a keyword without marking it as an extension. This is consistent with the standards in that an implementation is allowed to define arbitrary extensions in the implementation namespace without violating the standard. This gets rid of all the nasty "extension used" warnings for stuff like __attribute__ in -pedantic mode. We still warn for extensions outside of the the implementation namespace, like typeof. If someone wants to implement -Wextensions or something like that, we could add additional information to the keyword table. This also removes processing for the unused "Boolean" language option; such an extension isn't supported on any other C implementation, so I don't see any point to adding it. The changes to test/CodeGen/inline.c are required because previously, we weren't actually disabling the "inline" keyword in -std=c89 mode. I'll remove Boolean and NoExtensions from LangOptions in a follow-up commit. llvm-svn: 70281
-
- Apr 27, 2009
-
-
Daniel Dunbar authored
member. Also, spell bitfield more consistently as bit-field. llvm-svn: 70220
-
- Apr 26, 2009
-
-
Anders Carlsson authored
When calling the cleanup function specified by __attribute__((cleanup)), make sure to bitcast the argument so it has the same type as the first argument of the cleanup function. Fixes <rdar://problem/6827047>. llvm-svn: 70098
-
- Apr 25, 2009
-
-
Chris Lattner authored
llvm-svn: 70067
-
- Apr 23, 2009
-
-
Douglas Gregor authored
multiple declarations of the function. Should fix PR3989 and <rdar://problem/6818429>. llvm-svn: 69905
-
Devang Patel authored
Handle corner case where clang-cc is invoked directly to compile preprocessed source file without -main-file-name. In this case, CDDebugInfo is not able identify correct main source file becase SM.isFromMainFile() returns true for locations from header files as well as locations from main source file. This patch takes conservative approach by not emitting more then one compile unit with isMain bit set. llvm-svn: 69902
-
- Apr 22, 2009
-
-
Chris Lattner authored
extern. Previously we would warn about it and ignore the attribute. This is incorrect, it should be handled as a c89 "extern inline" function. Many thanks to Matthieu Castet for pointing this out and beating me over the head until I got it. PR3988: extern inline function are not externally visible llvm-svn: 69756
-
Chris Lattner authored
llvm-svn: 69747
-
- Apr 21, 2009
-
-
Chris Lattner authored
but crashed codegen. Fix this to report the name of the llvm function. This fixes rdar://6808051 llvm-svn: 69658
-