Commit Graph

48163 Commits

Author SHA1 Message Date
Ted Kremenek
d331d09e2f Add a QualType to ConjuredSymbol to represent the type and size of the symbol.
Use this updated interface when invalidating arguments passed by reference; the type of symbol is of the object passed by reference, not the reference itself.

llvm-svn: 56894
2008-10-01 00:21:14 +00:00
Owen Anderson
15e6be8cc5 Mark merged-in VNInfo's as being PHIKilled.
llvm-svn: 56893
2008-09-30 23:58:47 +00:00
Ted Kremenek
e8450fefdd Support -mmacosx-version-min
llvm-svn: 56892
2008-09-30 23:40:25 +00:00
Ted Kremenek
7a93cd8ac6 Set reproducibility back to "Always"
llvm-svn: 56891
2008-09-30 23:23:58 +00:00
Daniel Dunbar
969b48cba1 ccc: Add support for another batch of OS X linker options, including
-mmacosx-version-min.

One might anticipate that at some point I will just break down and go
through the man page. That seems a little too obvious.

llvm-svn: 56890
2008-09-30 22:54:22 +00:00
Owen Anderson
f4a36407c7 Fix a simple error in renumbering kill markaers, that took an inordinant amount of time to track down.
llvm-svn: 56889
2008-09-30 22:51:54 +00:00
Bill Wendling
1782584f56 Just don't transform this memset into "bzero" if no-builtin is specified.
llvm-svn: 56888
2008-09-30 22:05:33 +00:00
Nuno Lopes
5093ab4c76 add preserversCFG() + preservers(CallGraph)
llvm-svn: 56887
2008-09-30 22:04:30 +00:00
Bill Wendling
e818bc159f - Initialize "--no-builtin" to "false".
- Testcase for r56885.

llvm-svn: 56886
2008-09-30 21:40:30 +00:00
Bill Wendling
bd09262e97 Add the new `-no-builtin' flag. This flag is meant to mimic the GCC
`-fno-builtin' flag. Currently, it's used to replace "memset" with "_bzero"
instead of "__bzero" on Darwin10+. This arguably violates the meaning of this
flag, but is currently sufficient. The meaning of this flag should become more
specific over time.

llvm-svn: 56885
2008-09-30 21:22:07 +00:00
Daniel Dunbar
123e7d1c2a ccc: Infer action type upfront.
- More straightforward, e.g. -E should always imply action =
   'preprocess' (I think).
 - Pass another option through for OS X.

llvm-svn: 56884
2008-09-30 21:20:51 +00:00
Chris Lattner
a1cf5f9663 simplify padding, just fold it into the earlier resize.
llvm-svn: 56880
2008-09-30 20:53:45 +00:00
Chris Lattner
8b567f9713 fix a potential buffer overrun that Eli noticed
llvm-svn: 56879
2008-09-30 20:51:14 +00:00
Daniel Dunbar
106ab3bb42 Fix help for --suppress-system-warnings
llvm-svn: 56878
2008-09-30 20:49:53 +00:00
Dan Gohman
b486350b15 Move the primary fast-isel top-level comments to FastISel.cpp, where
they'll be a little more visible. Also, update and reword them a bit.

llvm-svn: 56877
2008-09-30 20:48:29 +00:00
Chris Lattner
59f09b6fe1 Document assumptions that NumericLiteralParser makes with an assertion.
llvm-svn: 56876
2008-09-30 20:45:40 +00:00
Chris Lattner
97d749464d Handle minor version numbers in __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
like "10.3.9"

llvm-svn: 56873
2008-09-30 20:30:12 +00:00
Chris Lattner
b5c15e8228 Finish handling of -mmacosx-version-min. If you now do something like:
clang -mmacosx-version-min=10.4.9 ...

you'll end up with a target triple like "i686-apple-darwin8.9".

llvm-svn: 56871
2008-09-30 20:16:56 +00:00
Nuno Lopes
2bd7b24f1a add AU.setPreservesCFG() since this pass only adds and removes function attributes
llvm-svn: 56868
2008-09-30 18:34:38 +00:00
Dan Gohman
86aa16a69a Optimize SelectionDAG's AssignTopologicalOrder even further.
Completely eliminate the TopOrder std::vector. Instead, sort
the AllNodes list in place. This also eliminates the need to
call AllNodes.size(), a linear-time operation, before
performing the sort.

Also, eliminate the Sources temporary std::vector, since it
essentially duplicates the sorted result as it is being
built.

This also changes the direction of the topological sort
from bottom-up to top-down. The AllNodes list starts out in
roughly top-down order, so this reduces the amount of
reordering needed. Top-down is also more convenient for
Legalize, and ISel needed only minor adjustments.

llvm-svn: 56867
2008-09-30 18:30:35 +00:00
Nuno Lopes
985f69ab26 ignore generated files
llvm-svn: 56866
2008-09-30 18:15:04 +00:00
Daniel Dunbar
9e3b917965 scan-view: Remove some debugging prints.
llvm-svn: 56864
2008-09-30 17:54:44 +00:00
Ted Kremenek
b6c459ea13 Updated checker build.
llvm-svn: 56863
2008-09-30 17:53:26 +00:00
Ted Kremenek
05f3ccda24 Default reproducibility to "Not applicable"
llvm-svn: 56860
2008-09-30 17:28:54 +00:00
Daniel Dunbar
5f57710392 Add diagnostic for .{lo,hi,e,o} on odd-sized extended vectors.
llvm-svn: 56859
2008-09-30 17:22:47 +00:00
Ted Kremenek
9f403161d7 Make "Performance" the default Radar classification for leaks. "Other" for all others (for now).
llvm-svn: 56858
2008-09-30 17:12:32 +00:00
Ted Kremenek
fb0fef9157 Make a separate parameter class for "Radar classifications".
Do not save the radar classification to the config file.

llvm-svn: 56856
2008-09-30 17:00:30 +00:00
Ted Kremenek
b166299f2b Add "SelectionParameter" class to represent drop-down boxes.
Added "Classification" field to Radar filing.
Modified FileRadar.scpt to take the classification as an argument.

llvm-svn: 56854
2008-09-30 16:37:50 +00:00
Daniel Dunbar
64fd24812a Change ccc to not pass -x unknown down.
Pass through some more Mac OS X linker options.

llvm-svn: 56853
2008-09-30 16:18:31 +00:00
Ted Kremenek
fef3c4092d Conditionally load/save default parameter value from config file.
llvm-svn: 56852
2008-09-30 16:11:33 +00:00
Ted Kremenek
094ff0b061 Use objects to represent form parameters. This allows us to abstract away some
of the details of HTML rendering of form parameters, and also us with the
ability to delegate other actions (such as in the filling in of default values)
to specific parameter objects.

llvm-svn: 56851
2008-09-30 16:08:13 +00:00
Evan Cheng
1a9a0b7b4e Add runStaticConstructorsDestructors which runs ctors / dtors of a single module. Patch by David Chisnall.
llvm-svn: 56849
2008-09-30 15:51:21 +00:00
Evan Cheng
9156bd2f48 Re-apply 56835 along with header file changes.
llvm-svn: 56848
2008-09-30 15:44:16 +00:00
Duncan Sands
dc69391810 Stacker is dead.
llvm-svn: 56844
2008-09-30 15:18:29 +00:00
Steve Naroff
4a82d815de Fix <rdar://problem/6191148> [sema] Objective-C method lookup (at global scope) fails to handle overloaded selectors properly.
Long standing bug in Sema::ActOnInstanceMessage(). We now warn when messaging an "id" with multiple method signatures in scope. The diags are a little verbose, however they can be streamlined if necessary. 

llvm-svn: 56843
2008-09-30 14:38:43 +00:00
Nuno Lopes
a459f12862 fix test for latest changes in llvm asm representation
llvm-svn: 56842
2008-09-30 14:37:33 +00:00
Steve Naroff
9f9774cd2b Improved fix for <rdar://problem/6247781> Parser rejecting properly mismatched properties.
Needed to make sure the relaxed type checking only applies to "readonly" properties.

llvm-svn: 56838
2008-09-30 10:07:56 +00:00
Duncan Sands
2b9adce1d0 Revert commit 56835 since it breaks the build.
"If a re-materializable instruction has a register
operand, the spiller will change the register operand's
spill weight to HUGE_VAL to avoid it being spilled.
However, if the operand is already in the queue ready
to be spilled, avoid re-materializing it".

llvm-svn: 56837
2008-09-30 10:00:30 +00:00
Nick Lewycky
e275a66538 Add missing include for use of atoi.
llvm-svn: 56836
2008-09-30 07:18:57 +00:00
Evan Cheng
9469049f7d If a re-materializable instruction has a register operand, the spiller will change the register operand's spill weight to HUGE_VAL to avoid it being spilled. However, if the operand is already in the queue ready to be spilled, avoid re-materializing it.
llvm-svn: 56835
2008-09-30 06:36:58 +00:00
Nick Lewycky
e8ced3ec19 Fix misoptimization of: xor i1 (icmp eq (X, C1), icmp s[lg]t (X, C2))
llvm-svn: 56834
2008-09-30 06:08:34 +00:00
Ted Kremenek
a930b56252 Tabs -> Spaces.
llvm-svn: 56833
2008-09-30 05:45:59 +00:00
Ted Kremenek
f1b299952a Revert last patch, but add a fixme
llvm-svn: 56832
2008-09-30 05:35:42 +00:00
Ted Kremenek
76bccf6221 Within the transfer function of UnaryOperatorExpr, handle implicit promotions
from the subexpression type to the expression type.

llvm-svn: 56831
2008-09-30 05:32:44 +00:00
Mon P Wang
553b4b912b Added support for sse intrinsics loadlpd, loadhpd, muldq128, and mulld128
llvm-svn: 56830
2008-09-30 05:31:27 +00:00
Dan Gohman
8392f0c75d Fix X86FastISel's output for x86-32 PIC constant pool addresses.
llvm-svn: 56829
2008-09-30 01:21:32 +00:00
Chris Lattner
29c54dd6b9 start handling 'mmacosx-version-min', this is not complete yet.
llvm-svn: 56828
2008-09-30 01:13:12 +00:00
Daniel Dunbar
2efd538f61 Add infrastructure for proper @finally support.
- Provides a basic primitive to jump to an arbitrary basic block,
   through the finally code.

 - Only used for return statements and rethrow currently. Still need
   to handle break, continue and goto.

 - Code still needs to be shuffled around to live elsewhere.

llvm-svn: 56827
2008-09-30 01:06:03 +00:00
Chris Lattner
b3793bb415 The definition of __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ follows
the target triple on darwin.  For example i386-apple-darwin9 -> 1050 because
darwin9 is "10.5".

llvm-svn: 56826
2008-09-30 01:00:25 +00:00
Dan Gohman
6ebe734ca6 Move the GlobalBaseReg field out of X86ISelDAGToDAG.cpp
and X86FastISel.cpp into X86MachineFunction.h, so that it
can be shared, instead of having each selector keep track
of its own.

llvm-svn: 56825
2008-09-30 00:58:23 +00:00