Fariborz Jahanian
e146a43052
Fixes a comment.
...
llvm-svn: 80136
2009-08-26 20:37:03 +00:00
Fariborz Jahanian
d79d5053bd
AST for conversion by conversion functions. WIP.
...
llvm-svn: 80135
2009-08-26 20:34:58 +00:00
Eli Friedman
a3063cec14
As far as I know, there aren't any warning differences between -std=gnu99 and
...
-std=c99 modes, etc.
llvm-svn: 80133
2009-08-26 20:18:00 +00:00
Eli Friedman
c00767d32a
Since the HexFloats option only controls a warning, it shouldn't depend
...
on whether we're in GNUMode. Adjust the code appropriately.
llvm-svn: 80132
2009-08-26 20:15:14 +00:00
Eli Friedman
95f896380f
Make address-space qualification work correctly for compound literals.
...
Issue reported on cfe-dev.
Also fixed the code to use isConstant to determine whether to generate a
constant global, to be consistent with CodeGenModule. This probably
needs to be refactored to deal with C++, though.
llvm-svn: 80131
2009-08-26 20:01:39 +00:00
Anders Carlsson
c24fc2949e
More support for pseudo dtors.
...
llvm-svn: 80129
2009-08-26 19:22:42 +00:00
Gabor Greif
bdabe5e5ea
Remove all the LLVM_COMPACTIFY_SENTINELS-related macro magic as discussed with Chris on IRC. Anybody wanting to debug sentinel dereferencing problems must revert this patch and perform the indicated modifications.
...
llvm-svn: 80128
2009-08-26 19:16:32 +00:00
Fariborz Jahanian
1cec0c4c94
update to CXXFunctionalCastExpr to support ir-gen for
...
type convesions of class objects [class.conv]. WIP.
llvm-svn: 80127
2009-08-26 18:55:36 +00:00
Douglas Gregor
13789b3af2
Make sure to compare primary declaration contexts when determining whether a declaration is in scope
...
llvm-svn: 80126
2009-08-26 18:54:58 +00:00
Oscar Fuentes
3d3fc043f2
CMake: Removed outdated TODO.
...
llvm-svn: 80124
2009-08-26 18:37:05 +00:00
Douglas Gregor
5e0962f944
When we know that we are parsing a class-name, implicitly construct a
...
TypenameType if getTypeName is looking at a member of an unknown
specialization. This allows us to properly parse class templates that
derived from type that could only otherwise be described by a typename type,
e.g.,
template<class T> struct X {};
template<typename T> struct Y : public X<T>::X { };
Fixes PR4381.
llvm-svn: 80123
2009-08-26 18:27:52 +00:00
Anders Carlsson
f571c11d54
Add Sema::BuildMemberReferenceExpr and have Sema::ActOnMemberReferenceExpr call it.
...
llvm-svn: 80122
2009-08-26 18:25:21 +00:00
Venkatraman Govindaraju
bc2190fe50
Generate section for bss and enable weak symbols
...
llvm-svn: 80121
2009-08-26 18:24:12 +00:00
Bob Wilson
faebdee4dd
Convert some more Neon tests to FileCheck.
...
llvm-svn: 80120
2009-08-26 18:11:50 +00:00
Dale Johannesen
f582ac7c11
Alter 79292 to produce output that actually assembles.
...
llvm-svn: 80119
2009-08-26 18:10:32 +00:00
Mike Stump
6cc5c93ce4
Allow unsigned long long DenseMapInfo.
...
llvm-svn: 80118
2009-08-26 18:02:19 +00:00
Bob Wilson
e0636a7aed
Remove unneeded ARM-specific DAG nodes for VLD* and VST* Neon operations.
...
The instructions can be selected directly from the intrinsics. We will need
to add some ARM-specific nodes for VLD/VST of 3 and 4 128-bit vectors, but
those are not yet implemented.
llvm-svn: 80117
2009-08-26 17:39:53 +00:00
Anton Korobeynikov
50509fc2cb
Add extload expansion for f128
...
llvm-svn: 80116
2009-08-26 17:39:40 +00:00
Anton Korobeynikov
5f6fc970c4
Unbreak FP128 stuff in cbe
...
llvm-svn: 80115
2009-08-26 17:39:23 +00:00
Anders Carlsson
e7b9d71aab
Address some of Doug's comments.
...
llvm-svn: 80114
2009-08-26 17:36:19 +00:00
Douglas Gregor
e9899d9769
Fix for overloaded binary operators whose operands need implicit
...
conversions, from Sylvere Teissier!
llvm-svn: 80112
2009-08-26 17:08:25 +00:00
Oscar Fuentes
175a6e4a3b
Ignore -fPIC test on Windows. Suggested by Yonggang Luo.
...
llvm-svn: 80111
2009-08-26 17:05:06 +00:00
Douglas Gregor
1bb5d32bdd
Unbreak CMake build
...
llvm-svn: 80109
2009-08-26 16:33:57 +00:00
Anton Korobeynikov
0f756b27ae
Expand scalar_to_vector - we don't have any isel logic for it now
...
llvm-svn: 80107
2009-08-26 16:26:09 +00:00
Anders Carlsson
6885d33753
Add the partially implemented PartialDiagnostic class.
...
llvm-svn: 80106
2009-08-26 16:23:53 +00:00
Dan Gohman
45a6b06a45
Add comments detailing a known bug, so that people writing other
...
backends don't use it as an example.
llvm-svn: 80105
2009-08-26 16:06:11 +00:00
Dan Gohman
b4720905ff
-fast is now -O0. -fast-isel is no longer experimental.
...
llvm-svn: 80104
2009-08-26 15:57:57 +00:00
Dan Gohman
6942375aa4
Move ProfileInfo::Edge's operator<< out of line. Among other benefits,
...
this eliminates the ATTRIBUTE_USED, which wasn't being used in a manner
acceptable to some GCC versions, according to the buildbots.
llvm-svn: 80103
2009-08-26 15:56:38 +00:00
Andreas Neustifter
e685cba880
Bugfix for r80100, forgot include. Sorry.
...
llvm-svn: 80101
2009-08-26 15:18:38 +00:00
Andreas Neustifter
73730f9390
Implemented comments from Daniel Dunbar.
...
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090817/084958.html )
llvm-svn: 80100
2009-08-26 15:13:44 +00:00
Dan Gohman
6c23fa2442
Don't use INSERT_SUBREG to model anyext operations on x86-64, as it
...
leads to partial-register definitions. To help avoid redundant
zero-extensions, also teach the h-register matching patterns that
use movzbl to match anyext as well as zext.
llvm-svn: 80099
2009-08-26 14:59:13 +00:00
Dan Gohman
d926b985df
Create a ScalarEvolution-based AliasAnalysis implementation.
...
This is a simple AliasAnalysis implementation which works by making
ScalarEvolution queries. ScalarEvolution has a more complete understanding
of arithmetic than BasicAA's collection of ad-hoc checks, so it handles
some cases that BasicAA misses, for example p[i] and p[i+1] within the
same iteration of a loop.
This is currently experimental. It may be that the main use for this pass
will be to help find cases where BasicAA can be profitably extended, or
to help in the development of the overall AliasAnalysis infrastructure,
however it's also possible that it could grow up to become a directly
useful pass.
llvm-svn: 80098
2009-08-26 14:53:06 +00:00
Douglas Gregor
7e112b0d79
Source location information for ? and : in a ConditionalOperator, from Enea Zaffanella
...
llvm-svn: 80097
2009-08-26 14:37:04 +00:00
Dan Gohman
331b99888e
Fix a missing newline, now that Value's operator<< doesn't add one of its own.
...
llvm-svn: 80096
2009-08-26 14:34:12 +00:00
Dan Gohman
0672e92e92
Use SetVector instead of std::set so that alias relations are tested and
...
printed in a deterministic order.
llvm-svn: 80095
2009-08-26 14:32:17 +00:00
Douglas Gregor
66a985d16e
Fix bug in __extension__ handling for declarations, from Abramo
...
Bagnara with a fix from Enea Zaffanella!
llvm-svn: 80094
2009-08-26 14:27:30 +00:00
Daniel Dunbar
c4581eaca8
llvm-mc/Mach-O: Add support for relocations.
...
- I haven't really tried to find the "right" way to store the fixups or apply
them, yet. This works, but isn't particularly elegant or fast.
- Still no evaluation support, so we don't actually ever not turn a fixup into
a relocation entry.
llvm-svn: 80089
2009-08-26 13:58:10 +00:00
Daniel Dunbar
a9eeb78ed5
llvm-mc/Mach-O: Move symbol indices into the MCSymbolData structure.
...
llvm-svn: 80088
2009-08-26 13:57:54 +00:00
Daniel Dunbar
b40044444b
llvm-mc/Mach-O: Dump relocations and section data (optionally) in my Mach-O dumper.
...
llvm-svn: 80087
2009-08-26 13:57:44 +00:00
Daniel Dunbar
c1710a04ba
llvm-mc: Add symbol entries for undefined symbols used in .fill and .org.
...
llvm-svn: 80086
2009-08-26 13:57:37 +00:00
Anton Korobeynikov
a0e01bec87
Add dummy inline asm handling for 'r' constraint. This fixes PR4778
...
llvm-svn: 80085
2009-08-26 13:44:29 +00:00
Andreas Neustifter
83489058d0
Moved isDeclaration() check further down to allow for function counts for
...
declarations if necessary.
llvm-svn: 80084
2009-08-26 13:33:09 +00:00
Daniel Dunbar
ffda9eb31a
llvm-mc: Change MCContext value table to take const MCSymbol*s.
...
llvm-svn: 80079
2009-08-26 09:16:57 +00:00
Daniel Dunbar
90398bd222
llvm-mc: Make MCValue take const MCSymbol*s.
...
llvm-svn: 80078
2009-08-26 09:16:46 +00:00
Daniel Dunbar
18f3c9b994
llvm-mc: Make non-sensical max bytes to .align an error.
...
Also, warn about overflow in alignment values.
llvm-svn: 80077
2009-08-26 09:16:34 +00:00
Andreas Neustifter
5f4e42ef9c
Changed std::cout to outs(), retaining formating.
...
llvm-svn: 80076
2009-08-26 09:05:21 +00:00
Devang Patel
f08e35d9dc
Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.
...
llvm-svn: 80073
2009-08-26 05:01:18 +00:00
Chris Lattner
1c9afc7130
some mips and some sparc compilers apparently
...
predefine mips and sparc respectively. Just overrule them :)
llvm-svn: 80072
2009-08-26 05:00:16 +00:00
Venkatraman Govindaraju
71425084f1
test commit
...
llvm-svn: 80070
2009-08-26 04:50:17 +00:00
Daniel Dunbar
bee148a185
llvm-mc: Fix tests for python variations in int printing, sigh.
...
llvm-svn: 80069
2009-08-26 04:28:45 +00:00