Oscar Fuentes
757a012bf1
CMake: Recursively invokes cmake using the right directories.
...
LLVM_MAIN_SRC_DIR and LLVM_BINARY_DIR are not the cmake top level
directories when LLVM is embedded on the build of other project.
Fixes PR #3072 .
llvm-svn: 59374
2008-11-15 20:35:25 +00:00
Nick Lewycky
6ce60407b2
Clean up some strange whitespace.
...
llvm-svn: 59373
2008-11-15 20:32:33 +00:00
Anders Carlsson
c2480a5589
Handle padding in the constant CFString struct. Fixes PR3046.
...
llvm-svn: 59372
2008-11-15 18:54:24 +00:00
Anders Carlsson
c9dacf4fdd
Use IgnoreParenCasts. No functionality change.
...
llvm-svn: 59371
2008-11-15 18:52:06 +00:00
Nick Lewycky
967aeeb400
Correct this error message.
...
llvm-svn: 59370
2008-11-15 17:50:47 +00:00
Zhongxing Xu
cfbc7cef61
Add Profile method to ImmutableList.
...
llvm-svn: 59362
2008-11-15 09:26:02 +00:00
Duncan Sands
da8d2873ed
When splitting a SHUFFLE_VECTOR, try to have the result
...
use SHUFFLE_VECTOR instead. If not practical, fall back
to the old scheme of building the split result by hand
using a BUILD_VECTOR.
llvm-svn: 59361
2008-11-15 09:25:38 +00:00
Zhongxing Xu
461b4f4276
Use the allocator of ExplodedGraph. The whole static analysis module uses it.
...
llvm-svn: 59359
2008-11-15 08:19:58 +00:00
Anders Carlsson
312045115e
Fix silly bug spotted by Daniel Dunbar
...
llvm-svn: 59358
2008-11-15 06:35:36 +00:00
Mon P Wang
f414cbc1fd
Add missing widen operations, fixed widening for extracting a subvector,
...
and when loading/storing a widen vector, make sure that they are loaded
and stored in consecutive order.
llvm-svn: 59357
2008-11-15 06:05:52 +00:00
Zhongxing Xu
6a276cf5b7
Improve zero value generation.
...
llvm-svn: 59356
2008-11-15 05:18:50 +00:00
Zhongxing Xu
fe354a200a
Add isUnsigned option.
...
llvm-svn: 59355
2008-11-15 05:17:04 +00:00
Ted Kremenek
1b2dace792
Reduce permissiveness of assertion.
...
llvm-svn: 59354
2008-11-15 05:00:27 +00:00
Ted Kremenek
9f748e23e3
Updated checker build.
...
llvm-svn: 59353
2008-11-15 04:57:19 +00:00
Ted Kremenek
3ebd7dea7e
Add a test case for compound assignments that lazily symbolicate the value of the LHS when the computation type is an integer of more bits.
...
llvm-svn: 59352
2008-11-15 04:44:13 +00:00
Ted Kremenek
4413714946
Reverted part of r59335: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20081110/009243.html
...
In that patch I added a bogus type promotion for unary '!'.
The real bug was more fallout from edges cases with compound assignments and conjured symbolic values. Now the conjured value has the type of the LHS expression, and we do a promotion to the computation type. We also now correctly do a conversion from the computation type back to the LHS type.
llvm-svn: 59349
2008-11-15 04:01:56 +00:00
Ted Kremenek
ac172fc574
Re-enable an assertion that I mistakenly removed.
...
llvm-svn: 59348
2008-11-15 02:35:08 +00:00
Oscar Fuentes
2c10b22b62
CMake: Adds header and TableGen files to Visual Studio solution. A new
...
dummy library, `llvm_headers_do_not_build', is created for containing
all header and TableGen files under include/llvm.
llvm-svn: 59346
2008-11-15 02:08:08 +00:00
Anders Carlsson
d0e4f2b106
Handle complex return values.
...
llvm-svn: 59345
2008-11-15 01:29:05 +00:00
Evan Cheng
9c205bf03c
Fix fuitos encoding.
...
llvm-svn: 59344
2008-11-15 00:40:57 +00:00
Ted Kremenek
519a223056
Use the correct QualType when creating the '0' constant.
...
llvm-svn: 59343
2008-11-15 00:40:08 +00:00
Oscar Fuentes
dc8d56e76e
CMake: Moved generation of Intrinsics.gen to
...
include/llvm/CMakeLists.txt. Does it with the `tablegen' cmake macro.
llvm-svn: 59342
2008-11-15 00:24:38 +00:00
Dan Gohman
68294c06fe
Correct a comment.
...
llvm-svn: 59341
2008-11-15 00:24:23 +00:00
Dan Gohman
d2760c0473
Move ScheduleDAGList's LatencyPriorityQueue class out to a separate file.
...
llvm-svn: 59340
2008-11-15 00:23:40 +00:00
Ted Kremenek
1ca3346b19
Implement FIXME in GRExprEngine::VisitUnaryOperator() to handle implicit conversions caused by the '!' operator. This required adding some logic to GRSimpleVals to reason about nonloc::LocAsInteger SVals. This code appears to work fine, but it should eventually be cleaned up.
...
llvm-svn: 59335
2008-11-15 00:20:05 +00:00
Ted Kremenek
7eee049eea
Flush llvm::errs() when printing out SVals.
...
llvm-svn: 59334
2008-11-15 00:16:53 +00:00
Oscar Fuentes
49df826e30
CMake: Remove unused tablegenning code from tools/llvmc2/driver.
...
llvm-svn: 59333
2008-11-14 23:59:50 +00:00
Zhongxing Xu
c381841e99
Add handy method.
...
llvm-svn: 59332
2008-11-14 23:49:15 +00:00
Sebastian Redl
ccdfabab35
Implement parsing and semantic checking of the 'mutable' keyword.
...
Thanks to Doug for the review. Actual effects of mutable to follow.
llvm-svn: 59331
2008-11-14 23:42:31 +00:00
Argyrios Kyrtzidis
494d410b32
Use ReadPtr, not ReadUIntPtr through a reinterpret_cast.
...
Thanks to Sebastian for the suggestion.
llvm-svn: 59330
2008-11-14 23:32:45 +00:00
Devang Patel
8ada1d5de5
Refactor code.
...
Strip debug information before stripping symbol names.
llvm-svn: 59328
2008-11-14 22:49:37 +00:00
Oscar Fuentes
070114fd79
CMake: Use LLVM_MAIN_SRC_DIR instead of CMAKE_SOURCE_DIR, for
...
consistency.
Patch by Kevin Andre!
llvm-svn: 59326
2008-11-14 22:21:02 +00:00
Oscar Fuentes
751ea9d957
CMake: Fixed dependencies of .cpp source files on .td and tablegenned
...
files.
llvm-svn: 59325
2008-11-14 22:06:14 +00:00
Dan Gohman
1472955eab
Add support for building a ScheduleDAG from MachineInstrs. This is currently
...
fairly conservative; it doesn't do alias-analysis queries and it doesn't
attempt to break anti-dependencies.
llvm-svn: 59324
2008-11-14 21:47:58 +00:00
Argyrios Kyrtzidis
d800fd96af
Remove Parser::isTokenUnqualifiedId, it's not getting used anywhere.
...
llvm-svn: 59323
2008-11-14 21:41:24 +00:00
Steve Naroff
a610ab3283
Fix <rdar://problem/6372970> clang ObjC rewriter: incorrect cast when passing block argument
...
SynthBlockInitExpr() was not adding by-ref arguments to the init expr.
llvm-svn: 59322
2008-11-14 21:36:12 +00:00
Ted Kremenek
fc419a035f
Minor tweaks to liveness analysis:
...
- Block-expression for 'ObjCForCollectionStmt' is not alive before it occurs
- Recursively visit 'element' expression for ObjCForCollectionStmt to get liveness for referenced block-level expressions and variables.
llvm-svn: 59316
2008-11-14 21:07:14 +00:00
Evan Cheng
30f6f8fdad
Fix MOVrx, MOVsrl_flag, and MOVsra_flag encodings.
...
llvm-svn: 59314
2008-11-14 20:09:11 +00:00
Ted Kremenek
537f6387a2
Second attempt at implementation transfer function support for ObjCForCollectionStmt. We now assume that the 'element' expression can be any lvalue.
...
llvm-svn: 59313
2008-11-14 19:47:18 +00:00
Ted Kremenek
8959a1a69a
Flow-sensitive uninitialized values analysis: properly handle the 'element' expression of ObjCForCollectionStmt (can be anything).
...
llvm-svn: 59312
2008-11-14 18:21:25 +00:00
Dale Johannesen
80cd21dba6
Remove unneeded stuff from GRAD register class.
...
llvm-svn: 59311
2008-11-14 18:10:48 +00:00
Richard Osborne
0f802ba33e
[XCore] Remove whitespace in the description used when
...
registering XCoreTargetMachine.
llvm-svn: 59308
2008-11-14 16:19:56 +00:00
Douglas Gregor
993603d80d
Add a new expression node, CXXOperatorCallExpr, which expresses a
...
function call created in response to the use of operator syntax that
resolves to an overloaded operator in C++, e.g., "str1 +
str2" that resolves to std::operator+(str1, str2)". We now build a
CXXOperatorCallExpr in C++ when we pick an overloaded operator. (But
only for binary operators, where we actually implement overloading)
I decided *not* to refactor the current CallExpr to make it abstract
(with FunctionCallExpr and CXXOperatorCallExpr as derived
classes). Doing so would allow us to make CXXOperatorCallExpr a little
bit smaller, at the cost of making the argument and callee accessors
virtual. We won't know if this is going to be a win until we can parse
lots of C++ code to determine how much memory we'll save by making
this change vs. the performance penalty due to the extra virtual
calls.
llvm-svn: 59306
2008-11-14 16:09:21 +00:00
Richard Osborne
5fe5933909
[XCore] Fix expansion of 64 bit add/sub. Don't custom expand
...
these operations if ladd/lsub are not available on the current
subtarget.
llvm-svn: 59305
2008-11-14 15:59:19 +00:00
Steve Naroff
2a2a41fa11
Fix <rdar://problem/6370288> clang ObjC rewriter: Too many _objc_symtab, _OBJC_SYMBOLS
...
llvm-svn: 59301
2008-11-14 14:10:01 +00:00
Douglas Gregor
be35ce953e
Don't require us to manually number the statements and expressions in StmtNodes.def. We don't need stable numbers yet, renumbering is a pain, and LAST_STMT had the wrong value anyway.
...
llvm-svn: 59300
2008-11-14 12:46:07 +00:00
Richard Osborne
d16b37efae
Add XCore intrinsics for getid (returns thread id) and bitrev (reverses
...
bits in a word).
llvm-svn: 59296
2008-11-14 10:12:16 +00:00
Zhongxing Xu
c967d03528
Improve comments.
...
llvm-svn: 59294
2008-11-14 09:23:38 +00:00
Lang Hames
9a91bd82c5
Test commit.
...
llvm-svn: 59293
2008-11-14 06:51:35 +00:00
Oscar Fuentes
a5f835622d
CMake: Disallow in-source builds except when building with the Visual
...
Studio IDE. CMake would overwrite the makefiles distributed with LLVM.
llvm-svn: 59292
2008-11-14 03:43:18 +00:00