Zhongxing Xu
b393b5080c
Implement struct initialization for SCA.
...
llvm-svn: 58506
2008-10-31 10:53:01 +00:00
Sanjiv Gupta
e3ba47b71b
For some targets pointer and int are 16-bits. Allow 16-bits as a valid index
...
in such cases.
llvm-svn: 58505
2008-10-31 10:26:20 +00:00
Zhongxing Xu
98bb1fa69e
Implement array initialization for SCA.
...
llvm-svn: 58504
2008-10-31 10:24:47 +00:00
Sanjiv Gupta
83b95cc60c
Fixed build warning. No functionality change.
...
llvm-svn: 58503
2008-10-31 10:24:31 +00:00
Zhongxing Xu
87bfa4340c
Add test code for array initialization.
...
llvm-svn: 58502
2008-10-31 10:23:14 +00:00
Sanjiv Gupta
d79592448b
Made the mechanism of defining preprocessor defs for maxint, ptrdiff_t, wchar
...
etc more generic. For some targets, long may not be equal to pointer size. For
example: PIC16 has int as i16, ptr as i16 but long as i32.
Also fixed a few build warnings in assert() functions in CFRefCount.cpp,
CGDecl.cpp, SemaDeclCXX.cpp and ParseDeclCXX.cpp.
llvm-svn: 58501
2008-10-31 09:52:39 +00:00
Daniel Dunbar
ada702ef45
Turn off module verification in Release-Asserts builds.
...
llvm-svn: 58500
2008-10-31 09:34:21 +00:00
Douglas Gregor
61956c460a
Add support for parsing and representing C++ constructor declarations.
...
Notes:
- Constructors are never found by name lookup, so they'll never get
pushed into any scope. Instead, they are stored as an
OverloadedFunctionDecl in CXXRecordDecl for easy overloading.
- There's a new action isCurrentClassName that determines whether an
identifier is the name of the innermost class currently being defined;
we use this to identify the declarator-id grammar rule that refers to
a type-name.
- MinimalAction does *not* support parsing constructors.
- We now handle virtual and explicit function specifiers.
llvm-svn: 58499
2008-10-31 09:07:45 +00:00
Daniel Dunbar
f8362f9e5d
"One" line fix for -parse-noop failure, "id" and several other things
...
were being treated as type names for non-Objective-C files.
- Other lines are just because MinimalAction didn't have access to
the LangOptions.
llvm-svn: 58498
2008-10-31 08:56:51 +00:00
Daniel Dunbar
0c248e7ed8
Debug info: Bug fix, function types should always include the return
...
type.
llvm-svn: 58497
2008-10-31 08:12:03 +00:00
Zhongxing Xu
ce71638c0d
Implement BindStruct and fix a bug in RetriveStruct.
...
llvm-svn: 58496
2008-10-31 08:10:01 +00:00
Zhongxing Xu
4de1c851d3
Fix 80-col violations.
...
llvm-svn: 58495
2008-10-31 07:26:14 +00:00
Zhongxing Xu
6c0d588942
Implement load from struct region. Instead of returning an UnknownVal(), we create a CompoundVal by loading from each field of the struct.
...
llvm-svn: 58494
2008-10-31 07:16:08 +00:00
Zhongxing Xu
5e23c5bf49
Make CompoundLiteralRegion a subclass of TypedRegiion.
...
llvm-svn: 58493
2008-10-31 06:30:35 +00:00
Zhongxing Xu
2caf586d2f
Add a tentative assertion.
...
llvm-svn: 58492
2008-10-31 06:05:32 +00:00
Ted Kremenek
d15b2b1121
On Mac OS X, use TMPDIR as the default location to place analysis results. This is a more secure location for such files, and addresses <rdar://problem/6334220>.
...
llvm-svn: 58491
2008-10-31 05:48:42 +00:00
Daniel Dunbar
d678ae2da3
Quick fix for PR2950, infinite loop generating debug info for
...
recursive types.
- Style will be clean up in further patches.
llvm-svn: 58490
2008-10-31 04:04:54 +00:00
Bill Wendling
6d70df0b05
Don't skip over all "terminator" instructions when determining where to put the
...
callee-saved restore code. It could skip over conditional jumps
accidentally. Instead, just skip the "return" instructions.
llvm-svn: 58489
2008-10-31 04:00:23 +00:00
Daniel Dunbar
a290ded36a
Formatting tweaks.
...
- No functionality change.
llvm-svn: 58488
2008-10-31 03:54:29 +00:00
Zhongxing Xu
121a53a176
Fix a comment.
...
llvm-svn: 58487
2008-10-31 03:01:26 +00:00
Daniel Dunbar
a1c4fcfc29
Fix warning.
...
llvm-svn: 58486
2008-10-31 01:50:01 +00:00
Oscar Fuentes
39304667af
CMake: Fix some unwanted commentary line wraps on the last change.
...
llvm-svn: 58485
2008-10-31 01:37:26 +00:00
Oscar Fuentes
c999dfadf1
CMake: Establish dependencies among executables and libraries, using
...
data manually extracted from llvm-config.
llvm-svn: 58484
2008-10-31 01:24:51 +00:00
Dan Gohman
99cdf8893e
Use MOVSSmr instead of EXTRACTPSmr in the case of extracting
...
vector element 0 for a store, as it's smaller and faster.
llvm-svn: 58483
2008-10-31 00:57:24 +00:00
Ted Kremenek
d119c0bd24
Added missing 'expected-warning'
...
llvm-svn: 58481
2008-10-31 00:20:13 +00:00
Ted Kremenek
20cf431bce
Enhance compound literal test case.
...
llvm-svn: 58480
2008-10-31 00:19:42 +00:00
Ted Kremenek
289c37ad8d
Use llvm::raw_string_ostream instead of std::ostringstream.
...
llvm-svn: 58479
2008-10-31 00:18:30 +00:00
Ted Kremenek
83214f9f9a
Enhance path-sensitive return-of-stack-address check to print out the line number of a compound literal (whose address is being returned) instead of printing out the hex representation of the pointer address of the CompoundLiteralExpr.
...
llvm-svn: 58478
2008-10-31 00:13:20 +00:00
Ted Kremenek
21365a31c2
Add accessor method to CompoundLiteralRegion to retrieve the CompoundLiteralExpr.
...
llvm-svn: 58476
2008-10-31 00:04:54 +00:00
Jim Grosbach
2589604d85
Revert errant deletion. The target needs to be able to specify that it doesn't want the generic constant pool to be emitted.
...
llvm-svn: 58475
2008-10-30 23:44:39 +00:00
Evan Cheng
c696ef9b11
I think we got non-machine specific constpool entries covered.
...
llvm-svn: 58474
2008-10-30 23:43:36 +00:00
Ted Kremenek
883af75f01
Updated checker build.
...
llvm-svn: 58473
2008-10-30 23:41:37 +00:00
Ted Kremenek
3d71fe1503
Add missing "expected warning".
...
Add compound literal with empty initializer (just to test the analyzer handles it).
llvm-svn: 58470
2008-10-30 23:17:05 +00:00
Ted Kremenek
4c276c736c
Extend "followsFundamentalRule" to ignore prefix '_' characters.
...
llvm-svn: 58469
2008-10-30 23:14:58 +00:00
Ted Kremenek
828e6dff9b
Handle the case in VisitInitListExprs where there are no initializers in the compound literal.
...
llvm-svn: 58468
2008-10-30 23:14:36 +00:00
Ted Kremenek
ae4d61efb2
Add method that will be invoked using the dot-syntax just to test that the missing -dealloc checker handles it.
...
llvm-svn: 58467
2008-10-30 23:00:13 +00:00
Ted Kremenek
6955463c24
Distinguish between self.X = ... where self.X is a property reference and self.X is an implicit call to setX.
...
llvm-svn: 58462
2008-10-30 22:28:48 +00:00
Cedric Venet
6c9f3ec66c
Change the name of the generated solution file for a CMake build. (from 'project' to 'LLVM').
...
!!!!!!!!!! Warning !!!!!!!!!!!!!!!
If you already have created a solution with cmake, you will need to manually open to the new one.
llvm-svn: 58461
2008-10-30 21:22:00 +00:00
Duncan Sands
aa53c491b2
Testcase for PR2987.
...
llvm-svn: 58459
2008-10-30 21:13:11 +00:00
Dan Gohman
13cbcf1c18
Canonicalize sext(i1) to i1?-1:0, and update various instcombine
...
optimizations accordingly.
llvm-svn: 58457
2008-10-30 20:40:10 +00:00
Duncan Sands
8311657b98
Testcase for PR2986.
...
llvm-svn: 58456
2008-10-30 20:34:30 +00:00
Duncan Sands
e18295c258
Fix PR2986: do not use a potentially illegal
...
type for the shift amount type. Add a check
that shifts and rotates use the type returned
by getShiftAmountTy for the amount. This
exposed some problems in CellSPU and PPC,
which have already been fixed.
llvm-svn: 58455
2008-10-30 20:26:50 +00:00
Daniel Dunbar
82d87d6203
Set svn:ignore on cscope.{files,out} in root llvm directory.
...
llvm-svn: 58453
2008-10-30 19:35:32 +00:00
Daniel Dunbar
5666feb09f
Set svn:ignore for some Release-Asserts and Output dirs.
...
llvm-svn: 58452
2008-10-30 19:31:35 +00:00
Duncan Sands
1310574b0f
Shift amounts should have type getShiftAmountTy
...
(i32 for PPC, not i8). Correct this, and some
formatting while there.
llvm-svn: 58451
2008-10-30 19:28:32 +00:00
Daniel Dunbar
3933e66a89
Add InlineCost class for represent the estimated cost of inlining a
...
function.
- This explicitly models the costs for functions which should
"always" or "never" be inlined. This fixes bugs where such costs
were not previously respected.
llvm-svn: 58450
2008-10-30 19:26:59 +00:00
Duncan Sands
0852f48d1d
Shift amounts should have the type given by
...
getShiftAmountTy (i32 in the case of CellSPU).
llvm-svn: 58449
2008-10-30 19:24:28 +00:00
Ted Kremenek
b7d13803ce
Improve compound literal test case.
...
llvm-svn: 58447
2008-10-30 18:46:50 +00:00
Ted Kremenek
0f0adc97c5
Use the correct predecessor node.
...
llvm-svn: 58446
2008-10-30 18:37:08 +00:00
Ted Kremenek
e40b698953
Pretty-printing for SVals now mainly uses llvm::raw_ostream. We have an adapter for std::ostream, but this will be removed in the future.
...
llvm-svn: 58445
2008-10-30 18:35:10 +00:00