Douglas Gregor
6ec47f0d59
Silence a warning about an unused variable in -Asserts builds
...
llvm-svn: 64306
2009-02-11 16:17:49 +00:00
Douglas Gregor
0e55853639
Implement semantic checking for template arguments that correspond to
...
pointer-to-member-data non-type template parameters. Also, get
consistent about what it means to returned a bool from
CheckTemplateArgument.
llvm-svn: 64305
2009-02-11 16:16:59 +00:00
Ted Kremenek
8527e3a727
PTH: Don't emit the PTH offset of the IdentifierInfo string data as that data is
...
referenced by other tables.
llvm-svn: 64304
2009-02-11 16:06:55 +00:00
Duncan Sands
185fc29820
Revert r64299: it breaks the build when configured
...
without --enable-pic, like my nightly tester.
llvm-svn: 64302
2009-02-11 13:23:49 +00:00
Duncan Sands
5b3349064d
These uses of "inline" can cause strange link-time
...
failures when building with optimization. Just get
rid of them.
llvm-svn: 64301
2009-02-11 12:25:15 +00:00
Duncan Sands
003754f656
Make sure the SCC pass manager initializes any contained
...
function pass managers. Without this, simplify-libcalls
would add nocapture attributes when run on its own, but
not when run as part of -std-compile-opts or similar.
llvm-svn: 64300
2009-02-11 09:58:43 +00:00
Nick Lewycky
9dfffc6c9f
Try this. Darwin -> LTO, PIC -> LTO + possibly gold too.
...
llvm-svn: 64299
2009-02-11 08:44:13 +00:00
Evan Cheng
a1968b0fc7
Implement PR3495: local spiller optimization. The local spiller can now keep availability information over BB boundaries. It visits BB's in depth first order. After visiting a BB if it find a successor which has a single predecessor it visits the successor next without clearing the availability information. This allows the successor to omit reloads or change them into copies.
...
llvm-svn: 64298
2009-02-11 08:24:21 +00:00
Ted Kremenek
345749aff4
Update checker build.
...
llvm-svn: 64297
2009-02-11 07:50:23 +00:00
Chris Lattner
746b21361f
Fix rdar://6518463, increment of a bool is always true, due to
...
subtle and non-obvious promotion rules. We already handle +=
and +1 correctly.
llvm-svn: 64296
2009-02-11 07:40:06 +00:00
Chris Lattner
60dcdc7062
finish off codegen support for sub of pointer to functions,
...
finishing off rdar://6520707
llvm-svn: 64295
2009-02-11 07:21:43 +00:00
Ted Kremenek
bdc2c0c990
Per PR 3187, disable the missing -dealloc check for classes that subclass SenTestCase.
...
llvm-svn: 64292
2009-02-11 07:10:07 +00:00
Anders Carlsson
d0d8c540ca
Add pmmintrin.h header.
...
llvm-svn: 64291
2009-02-11 06:39:50 +00:00
Anders Carlsson
5bc94e625b
Fix some mistakes I made when I tried to decipher the Intel documentation of the MXCSR register
...
llvm-svn: 64290
2009-02-11 06:29:32 +00:00
Chris Lattner
54ef713d22
testcase for rdar://6096412 which already works.
...
llvm-svn: 64289
2009-02-11 06:22:30 +00:00
Dan Gohman
dfaf646c34
When scheduling a block in parts, keep track of the overall
...
instruction index across each part. Instruction indices are used
to make live range queries, and live ranges can extend beyond
scheduling region boundaries.
Refactor the ScheduleDAGSDNodes class some more so that it
doesn't have to worry about this additional information.
llvm-svn: 64288
2009-02-11 04:27:20 +00:00
Douglas Gregor
483e510a83
CHAR_BIT == 8
...
llvm-svn: 64286
2009-02-11 04:02:22 +00:00
Devang Patel
8a9ced15d4
62987 disables LTO build on darwin.
...
Revert 62987 for now. Nicolas please investigate.
llvm-svn: 64285
2009-02-11 02:34:33 +00:00
Devang Patel
316705027b
If llvm.dbg.region.end is disappearing then remove corresponding llvm.dbg.func.start also.
...
llvm-svn: 64278
2009-02-11 01:29:06 +00:00
Douglas Gregor
6f233ef1d8
Add semantic checking for template arguments that correspond to
...
non-type template parameters that are references to functions or
pointers to member functions. Did a little bit of refactoring so that
these two cases, along with the handling of non-type template
parameters that are pointers to functions, are handled by the same
path.
Also, tweaked FixOverloadedFunctionReference to cope with member
function pointers. This is a necessary step for getting all of the fun
member pointer conversions working outside of template arguments, too.
llvm-svn: 64277
2009-02-11 01:18:59 +00:00
Mike Stump
f9cf4fa08c
One more tweak to account for gluing together llvm and clang into one.
...
llvm-svn: 64276
2009-02-11 01:11:36 +00:00
Mike Stump
9d5d3b9de5
More version experimentation.
...
llvm-svn: 64271
2009-02-11 01:01:17 +00:00
Douglas Gregor
a9faa44162
Semantic checking for template arguments that correspond to non-type
...
template parameters that have reference type. Effectively, we're doing
a very limited form of reference binding here.
llvm-svn: 64270
2009-02-11 00:44:29 +00:00
Mike Stump
081e354f11
Run a little experiment with version numbers.
...
llvm-svn: 64268
2009-02-11 00:36:04 +00:00
Dan Gohman
1262a25683
Don't print extra spaces in vector and array constants. This makes
...
them visually more consistent with vector and array types.
llvm-svn: 64267
2009-02-11 00:25:25 +00:00
Douglas Gregor
3a7796bccc
Add partial semantic checking of template arguments that are meant for
...
non-type template parameters of pointer-to-object and
pointer-to-function type. The most fun part of this is the use of
overload resolution to pick a function from the set of overloaded
functions that comes in as a template argument.
Also, fixed two minor bugs in this area:
- We were allowing non-type template parameters of type pointer to
void.
- We weren't patching up an expression that refers to an overloaded
function set via "&f" properly.
We're still not performing complete checking of the expression to be
sure that it is referring to an object or function with external
linkage (C++ [temp.arg.nontype]p1).
llvm-svn: 64266
2009-02-11 00:19:33 +00:00
Dan Gohman
c8dcf4d72b
It isn't necessary to explicitly clear the contents of std::vector
...
and DenseMap members in a destructor. And tidy up a comment.
llvm-svn: 64265
2009-02-11 00:18:15 +00:00
Bill Wendling
e5640dd8ad
Don't try to strip a file we just moved.
...
llvm-svn: 64263
2009-02-11 00:14:53 +00:00
Dan Gohman
27fa408b64
Use iterators to iterate through the Preds array instead of
...
an index. This code is on the hot-path because the current
way SDep edges are uniqued has quadratic complexity.
llvm-svn: 64262
2009-02-11 00:12:28 +00:00
Ted Kremenek
a3d9025dd3
BugReporter: Use llvm::raw_string_stream instead of std::ostringstream.
...
llvm-svn: 64259
2009-02-10 23:56:07 +00:00
Mike Stump
6abe6923e5
Add private extern to pretty printer(s).
...
llvm-svn: 64258
2009-02-10 23:49:50 +00:00
Ted Kremenek
5dcf9034c2
Add another test case for the MissingDealloc checker.
...
llvm-svn: 64257
2009-02-10 23:41:52 +00:00
Douglas Gregor
86560404fc
Add type-checking and implicit conversions for template parameters of
...
integral or enumeration type.
llvm-svn: 64256
2009-02-10 23:36:10 +00:00
Dan Gohman
b3dbb21df1
Consider any instruction that modifies the stack pointer to be
...
a scheduling region boundary. This isn't necessary for
correctness; it helps with compile time, as it avoids the need
for data- and anti-dependencies from all spills and reloads on
the stack-pointer modification.
llvm-svn: 64255
2009-02-10 23:29:38 +00:00
Dan Gohman
b95434356c
Factor out more code for computing register live-range informationfor
...
scheduling, and generalize is so that preserves state across
scheduling regions. This fixes incorrect live-range information around
terminators and labels, which are effective region boundaries.
In place of looking for terminators to anchor inter-block dependencies,
introduce special entry and exit scheduling units for this purpose.
llvm-svn: 64254
2009-02-10 23:27:53 +00:00
Anders Carlsson
7ccf3e4e28
Handle the case where EmitBlock might be called multiple times for the same block. Fixes PR3536.
...
llvm-svn: 64252
2009-02-10 22:50:24 +00:00
Fariborz Jahanian
d7264430e6
This patch is all it takes to pass all objc2's fast-enumeration
...
tests in the dejagnu test suite in the nonfragile abi mode.
llvm-svn: 64251
2009-02-10 22:46:12 +00:00
Ted Kremenek
c7d6964a38
PTH generation: Discard tokens that appear after and on the same line as '#endif'.
...
llvm-svn: 64250
2009-02-10 22:43:16 +00:00
Ted Kremenek
f70f089286
Bump PTH version.
...
llvm-svn: 64249
2009-02-10 22:37:57 +00:00
Chris Lattner
1ec246d233
make -dM emit macros in a deterministic (sorted) order instead of
...
random hash table order, I don't like non-determinstic output.
llvm-svn: 64248
2009-02-10 22:28:19 +00:00
Ted Kremenek
99c7275118
PTH generation: Don't call 'EmitToken' in the loop condition. This is preparing for other changes within the loop.
...
llvm-svn: 64247
2009-02-10 22:27:09 +00:00
Ted Kremenek
86423a9993
PTH: Replace ad hoc 'file name' -> 'PTH data' lookup table in the PTH file with an on-disk chained hash table. This data structure is implemented using templates, and will be used to replace similar data structures. This change leads to no visibile performance impact on Cocoa.h, but now we only pay a price for the table on order with the number of files accessed and not the number in the PTH file.
...
llvm-svn: 64245
2009-02-10 22:16:22 +00:00
Chris Lattner
8ac63738b4
use efficient form of getSpelling, this speeds up -dM by 16%.
...
llvm-svn: 64244
2009-02-10 22:16:03 +00:00
Devang Patel
654e47f366
Ignore dbg intrinsic while folding unconditional branch.
...
llvm-svn: 64242
2009-02-10 22:14:17 +00:00
Evan Cheng
589a539423
Handle llvm.x86.sse2.maskmov.dqu in 64-bit.
...
llvm-svn: 64240
2009-02-10 22:06:28 +00:00
Douglas Gregor
09cfcff492
GNU allows structs with flexible array members to be placed inside
...
arrays and other structs/unions as an extension. Downgrade our error
to a warning. Fixes PR3540.
llvm-svn: 64239
2009-02-10 21:49:46 +00:00
Daniel Dunbar
e46506eaea
Pull CodeGenFunction::EmitVAArg into target specific ABIInfo classes.
...
- Missed this file.
llvm-svn: 64238
2009-02-10 21:44:36 +00:00
Evan Cheng
df15f13c34
80 col violations.
...
llvm-svn: 64237
2009-02-10 21:39:44 +00:00
Duncan Sands
6632f12c11
This is now done using a real i33, rather than
...
an emulated one. Adjust the check.
llvm-svn: 64236
2009-02-10 20:44:15 +00:00
Daniel Dunbar
2d0746fb97
Pull CodeGenFunction::EmitVAArg into target specific ABIInfo classes.
...
llvm-svn: 64235
2009-02-10 20:44:09 +00:00