Eric Christopher
74892d4f1f
In progress on 32-bit addends.
...
llvm-svn: 106154
2010-06-16 21:32:38 +00:00
Jakob Stoklund Olesen
207cd4bbd7
Allow a register to be redefined multiple times in a basic block.
...
LiveVariableAnalysis was a bit picky about a register only being redefined once,
but that really isn't necessary.
Here is an example of chained INSERT_SUBREGs that we can handle now:
68 %reg1040<def> = INSERT_SUBREG %reg1040, %reg1028<kill>, 14
register: %reg1040 +[70,134:0)
76 %reg1040<def> = INSERT_SUBREG %reg1040, %reg1029<kill>, 13
register: %reg1040 replace range with [70,78:1) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,134:0) 0@78-(134) 1@70-(78)
84 %reg1040<def> = INSERT_SUBREG %reg1040, %reg1030<kill>, 12
register: %reg1040 replace range with [78,86:2) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,134:0) 0@86-(134) 1@70-(78) 2@78-(86)
92 %reg1040<def> = INSERT_SUBREG %reg1040, %reg1031<kill>, 11
register: %reg1040 replace range with [86,94:3) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,94:3)[94,134:0) 0@94-(134) 1@70-(78) 2@78-(86) 3@86-(94)
rdar://problem/8096390
llvm-svn: 106152
2010-06-16 21:29:40 +00:00
Ted Kremenek
64c235e4c6
Extend format string type-checking to include '%p'. Fixes remaining cases PR 4468.
...
llvm-svn: 106151
2010-06-16 21:23:04 +00:00
Jim Grosbach
fd3b4e7390
A few more places where SCEVExpander bits need to skip over debug intrinsics
...
when iterating through instructions. Yet more work for rdar://7797940
llvm-svn: 106149
2010-06-16 21:13:38 +00:00
Douglas Gregor
7dbfb46163
Canonicalize template template parameters when canonicalizing a
...
template name that refers to such a parameter. It's amazing that this
problem didn't surface earlier. Fixes PR7387.
llvm-svn: 106147
2010-06-16 21:09:37 +00:00
Jim Grosbach
2c8b829238
modify so the test doesn't drop an output file in the test source directory.
...
The test should also likely have some FileCheck bits to validate the
output(?).
llvm-svn: 106146
2010-06-16 21:07:06 +00:00
Daniel Dunbar
aa2d0ceaa9
tests: Update Frontend config to actually run ir-support tests.
...
llvm-svn: 106144
2010-06-16 20:04:36 +00:00
Daniel Dunbar
ede8e6d2f0
MC/Mach-O: Rewrite atom association to be a final pass we do in Finish(), instead of tracking as part of emission.
...
- This allows sharing more code with the MCObjectStreamer.
llvm-svn: 106143
2010-06-16 20:04:32 +00:00
Daniel Dunbar
aa627c39e4
MC: Simplify MCAssembler::isSymbolLinkerVisible to only take an MCSymbol.
...
llvm-svn: 106142
2010-06-16 20:04:29 +00:00
Daniel Dunbar
b2347fe504
MC: Lift SwitchSection() and Finish() into MCObjectStreamer.
...
llvm-svn: 106141
2010-06-16 20:04:25 +00:00
Daniel Dunbar
8a3c9d9bc4
MC: Factor out an MCObjectStreamer class, which will be shared by the concrete
...
object file format writers.
llvm-svn: 106140
2010-06-16 20:04:22 +00:00
Fariborz Jahanian
18e0275033
C return types must be complete as well.
...
Moved check before we build the ObjCMessageExpr node.
(PR7386 related).
llvm-svn: 106139
2010-06-16 19:56:08 +00:00
Devang Patel
79b0da30fb
Be specific. Use FileCheck.
...
llvm-svn: 106135
2010-06-16 19:39:45 +00:00
Rafael Espindola
a20e2dfe86
Make sure that simplify libcalls does not replace a call with one calling
...
convention with a new call with a different calling convention.
llvm-svn: 106134
2010-06-16 19:34:01 +00:00
Johnny Chen
22ce5b62b0
Fixed a typo in comment.
...
llvm-svn: 106133
2010-06-16 19:30:20 +00:00
Caroline Tice
d6ac38485b
Parameterize the shell scripts for creating and copying the python and
...
other script files around, so they can be run from outside Xcode. Also,
check the current OS, and only try to use the framework structure stuff on
Darwin systems.
llvm-svn: 106132
2010-06-16 19:26:52 +00:00
Rafael Espindola
23a8a06554
Change the test for which ABI/CC to use on ARM to be base on the environment
...
(the last argument of the triple).
llvm-svn: 106131
2010-06-16 19:01:17 +00:00
Fariborz Jahanian
1d44608cc1
Make sure result type of objc++ message expression is
...
complete before attempting to bind it to a temporary.
Fixes PR7386.
llvm-svn: 106130
2010-06-16 18:56:04 +00:00
Jim Grosbach
6c0da25129
add FIXME
...
llvm-svn: 106126
2010-06-16 18:45:08 +00:00
Devang Patel
e3721dd27c
This requires more investigation. Unblock buildbots for now.
...
llvm-svn: 106122
2010-06-16 18:19:49 +00:00
Devang Patel
37e4f98cb6
Update test to explicitly capture llc output.
...
llvm-svn: 106121
2010-06-16 18:04:12 +00:00
Rafael Espindola
ad64acde72
A a new test for my previous patch.
...
llvm-svn: 106120
2010-06-16 18:02:31 +00:00
Bill Wendling
d71bd63600
Improve comment to include that the use of a preg is also verboten in this situation.
...
llvm-svn: 106119
2010-06-16 18:01:31 +00:00
Rafael Espindola
b35e7b8659
Fix tests that I missed from my previous commit.
...
llvm-svn: 106118
2010-06-16 17:49:52 +00:00
Douglas Gregor
21bc129db3
Eliminate a redundant "typename" keyword
...
llvm-svn: 106117
2010-06-16 17:42:01 +00:00
Owen Anderson
c7da5f413b
Switch from qsort_r to std::stable_sort for a performance win and improved portability.
...
llvm-svn: 106116
2010-06-16 17:34:05 +00:00
Zhanyong Wan
644346b182
Test commit by adding a blank comment line.
...
llvm-svn: 106114
2010-06-16 17:21:03 +00:00
Daniel Dunbar
7c995e8fac
Frontend: Allow passing -cc1 level arguments to plugins. Patch by Troy Straszheim!
...
llvm-svn: 106113
2010-06-16 16:59:23 +00:00
Daniel Dunbar
26036fd722
Driver: Ignore -ffast-math and -f[no-]finite-math-only.
...
llvm-svn: 106112
2010-06-16 16:59:17 +00:00
Douglas Gregor
94584683fa
Don't poke at an undefined class type of a field. Fixes PR7355.
...
llvm-svn: 106111
2010-06-16 16:54:04 +00:00
Douglas Gregor
010815a20b
Downgrade the error when using a typedef in the nested-name-specifier
...
of an explicit instantiation to an ExtWarn, since nobody else seems to
diagnose this problem.
llvm-svn: 106109
2010-06-16 16:26:47 +00:00
Douglas Gregor
f56055aee3
Add Cygwin C++ header search path.
...
llvm-svn: 106108
2010-06-16 16:24:51 +00:00
Fariborz Jahanian
4a30307840
Fixed conflict between objc_memmove_collectable builtin
...
decl. and one ddefined in darwin header file.
llvm-svn: 106107
2010-06-16 16:22:04 +00:00
Rafael Espindola
a92c442437
Don't set the calling convention for ARM if it is already the default.
...
llvm-svn: 106106
2010-06-16 16:13:39 +00:00
Douglas Gregor
1c69bf00ae
If a non-dependent base class initializer fails to match any direct or
...
virtual base class, but the class still has dependent base classes,
then don't diagnose the failed match as an error: the right base class
might magically appear. Fixes PR7259.
llvm-svn: 106103
2010-06-16 16:03:14 +00:00
Benjamin Kramer
41476410c9
TODO--
...
llvm-svn: 106102
2010-06-16 15:47:00 +00:00
Douglas Gregor
9938e3b11b
Add some missing parentheses, from Anton Yartsev
...
llvm-svn: 106101
2010-06-16 15:28:57 +00:00
Douglas Gregor
2ebcae1931
Revert r106099; it broke self-host.
...
llvm-svn: 106100
2010-06-16 15:23:05 +00:00
Abramo Bagnara
bec18dbb88
Added TemplateTypeParmType::getDecl().
...
llvm-svn: 106099
2010-06-16 14:59:30 +00:00
John McCall
be829868e1
Rework the unqualified-lookup-in-templates section of the compatibility
...
document. jyasskin, let me know if this meets your needs.
llvm-svn: 106098
2010-06-16 10:48:16 +00:00
Benjamin Kramer
a13bd20396
simplify-libcalls: fold strncmp(x, y, 1) -> memcmp(x, y, 1)
...
The memcmp will be optimized further and even the pathological case
'strstr(x, "x") == x' generates optimal code now.
llvm-svn: 106097
2010-06-16 10:30:29 +00:00
John McCall
38e5f433b2
Fix the build. Using declarations should not be considering when looking
...
for overridden virtual methods.
llvm-svn: 106096
2010-06-16 09:33:39 +00:00
John McCall
89d57ae436
Some more nods to HTML well-formedness.
...
llvm-svn: 106094
2010-06-16 08:48:08 +00:00
John McCall
e9cccd86da
Fix a point of semantics with using declaration hiding: method templates
...
introduced by using decls are hidden even if their template parameter lists
or return types differ from the "overriding" declaration.
Propagate using shadow declarations around more effectively when looking up
template-ids. Reperform lookup for template-ids in member expressions so that
access control is properly set up.
Fix some number of latent bugs involving template-ids with totally invalid
base types. You can only actually get these with a scope specifier, since
otherwise the template-id won't parse as a template-id.
Fixes PR7384.
llvm-svn: 106093
2010-06-16 08:42:20 +00:00
Evan Cheng
f128bdcb55
Make post-ra scheduling, anti-dep breaking, and register scavenger (conservatively) aware of predicated instructions. This enables ARM to move if-conversion before post-ra scheduler.
...
llvm-svn: 106091
2010-06-16 07:35:02 +00:00
Devang Patel
d119da54de
Check function pointer first, before comparing function names.
...
llvm-svn: 106088
2010-06-16 06:42:02 +00:00
Zhongxing Xu
abd60dd1fc
We return Loc where we know.
...
llvm-svn: 106087
2010-06-16 06:16:46 +00:00
Zhongxing Xu
7880db8a89
Typo.
...
llvm-svn: 106086
2010-06-16 05:58:35 +00:00
Zhongxing Xu
b4126ee133
Although arguments can not be undefined when we get here, they can still be
...
unknown.
llvm-svn: 106085
2010-06-16 05:56:39 +00:00
Zhongxing Xu
9fe7e9129b
Cast earlier. We know we can get a DefinedSVal.
...
llvm-svn: 106084
2010-06-16 05:52:03 +00:00