Daniel Dunbar
b7396f10b9
Driver: Fix off by one in ParseOneArg; this code is ugly but will be
...
replaced anyway.
llvm-svn: 66101
2009-03-04 23:03:35 +00:00
Daniel Dunbar
135837e046
Driver: Add Arg::dump and SeparateArg stubs.
...
llvm-svn: 66100
2009-03-04 23:02:50 +00:00
Fariborz Jahanian
5e55d41cd7
Removed an unfortunate cut and paste left-over.
...
llvm-svn: 66099
2009-03-04 23:00:40 +00:00
Ted Kremenek
33129a26f7
Add prototype support for invalidating fields for structures passed-by-reference
...
to unknown functions. Most of this logic should be eventually moved to
RegionStore and be made lazy.
llvm-svn: 66094
2009-03-04 22:56:43 +00:00
Ted Kremenek
9a92b95092
MemRegion:
...
- Have 'TypedRegion::getRValueType()' return a null QualType for 'id<...>'
instead of aborting.
- Change 'TypedRegion::isBoundable()' to return true for all objects with a
non-null RValueType (this may not be the final behavior).
llvm-svn: 66093
2009-03-04 22:55:18 +00:00
Ted Kremenek
6ee8f8bcb5
Add an optional "tag" to conjured symbols that allows us to distinguish between
...
multiple symbols conjured at the same location. All that is required of the tag
is that it is a fixed void* value that points to an memory address that remains
valid throughout the remainder of the lifetime of the SymbolManager.
llvm-svn: 66092
2009-03-04 22:53:46 +00:00
Mike Stump
2d33d6300c
Fixup __block codegen in nested block literals.
...
llvm-svn: 66091
2009-03-04 22:48:06 +00:00
Daniel Dunbar
d9621da5ae
Driver: Add OptTable::ParseOneArg.
...
llvm-svn: 66090
2009-03-04 22:41:37 +00:00
Daniel Dunbar
16b9fd447a
Driver: Add ArgList::{append, getArgString}
...
llvm-svn: 66089
2009-03-04 22:40:08 +00:00
Daniel Dunbar
9333fc656d
Driver: Stub out Arg implementations.
...
llvm-svn: 66088
2009-03-04 22:37:52 +00:00
Fariborz Jahanian
b8d091c4eb
Implemented access check for ivars accessed inside
...
c-style functions declared inside objc @implementations.
llvm-svn: 66087
2009-03-04 22:30:12 +00:00
Bill Wendling
19ce8619da
Should have XFAILed this test.
...
llvm-svn: 66086
2009-03-04 22:29:34 +00:00
Bill Wendling
803da0db79
Temporarily revert r65994. It was causing rdar://6646455.
...
llvm-svn: 66083
2009-03-04 22:02:09 +00:00
Gabor Greif
ebd4998c1f
ooops, forgot to include the pointless-write eliminator in my previous checkin
...
llvm-svn: 66081
2009-03-04 21:54:31 +00:00
Dale Johannesen
a31552c151
Add some cautionary comments.
...
llvm-svn: 66080
2009-03-04 21:53:29 +00:00
Daniel Dunbar
a59194cd10
Driver: Option's need to know their ID.
...
- Also, add Input and Unknown opts to OptTable.
llvm-svn: 66079
2009-03-04 21:53:04 +00:00
Chris Lattner
07e85f3fc5
Start making use of "pretty stack dumps" to get
...
better crash info when clang crashes. Step #2 of many.
llvm-svn: 66078
2009-03-04 21:41:39 +00:00
Chris Lattner
20fc207f52
minor cleanups
...
llvm-svn: 66077
2009-03-04 21:40:56 +00:00
Chris Lattner
68061d5995
add some helper classes for building light-weight symbolic stack traces
...
that get printed when a program crashes. This is the first step of many.
llvm-svn: 66076
2009-03-04 21:40:23 +00:00
Dale Johannesen
df4226c0e2
Re-commit 65975 and a fix for the problem that
...
was causing llvm-gcc to fail to build. I've
verified it bootstraps now; good enough for me.
llvm-svn: 66073
2009-03-04 21:24:04 +00:00
Chris Lattner
4fdd042d9e
Add a new 'AddSignalHandler' function to Signals.h that allows
...
arbitrary functions to be run when a crash happens. Delete
RemoveDirectoryOnSignal as it is dead and has never had clients.
Change PrintStackTraceOnErrorSignal to be implemented in terms of
AddSignalHandler.
I updated the Win32 versions of these APIs, but can't test them.
If there are any problems, I'd be happy to fix them as well.
llvm-svn: 66072
2009-03-04 21:21:36 +00:00
Daniel Dunbar
3588c96c39
Driver: Pull intrusive list out of Arg; this isn't going to suffice. I
...
will make this efficient later (if it even matters)...
llvm-svn: 66071
2009-03-04 21:17:31 +00:00
Daniel Dunbar
b17eec5909
Driver: Return reference for Arg::getOption().
...
llvm-svn: 66070
2009-03-04 21:14:57 +00:00
Daniel Dunbar
7c5a8d2fa0
Add a little utility for interposing between a command line program
...
and capturing its invocations.
llvm-svn: 66068
2009-03-04 21:06:52 +00:00
Daniel Dunbar
f49bc318ed
Driver: Add Option flags.
...
llvm-svn: 66067
2009-03-04 21:05:23 +00:00
Daniel Dunbar
53bbc31ebd
Driver: Tweak Option::accept interface.
...
llvm-svn: 66066
2009-03-04 20:53:00 +00:00
Dan Gohman
66476b582d
Fix this comment.
...
llvm-svn: 66065
2009-03-04 20:50:23 +00:00
Sebastian Redl
b1c4d5507f
The basic representation of diagnostics information in tablegen format, plus (uncommented and incomplete) test conversions of the existing def files to this format.
...
llvm-svn: 66064
2009-03-04 20:49:43 +00:00
Daniel Dunbar
b2cd66bf4d
Driver: Sink Driver/Compilation into clang::driver namespace.
...
- Add OptTable instance to Driver.
llvm-svn: 66063
2009-03-04 20:49:20 +00:00
Dan Gohman
ae0035ee15
Add an assertion for a condition that's always true, and not
...
immediately obvious.
llvm-svn: 66062
2009-03-04 20:49:01 +00:00
Gabor Greif
de2fb05246
Give sentinel traits the right to determine the policy where the sentinel is kept.
...
This should result in less indirect memory accesses, less dead writes and tighter code.
llvm-svn: 66061
2009-03-04 20:36:44 +00:00
Sebastian Redl
ec2d479b8b
Fix typo in diagnostic.
...
llvm-svn: 66059
2009-03-04 19:58:58 +00:00
Dan Gohman
55d7b2ac4f
Re-apply 66008, now that the unfoldMemoryOperand bug is fixed.
...
llvm-svn: 66058
2009-03-04 19:44:21 +00:00
Dan Gohman
f8920d0c75
Correct this comment.
...
llvm-svn: 66057
2009-03-04 19:24:25 +00:00
Dan Gohman
cc329b567d
When using MachineInstr operand indices on SDNodes, the number
...
of MachineInstr def operands must be subtracted out. This bug
was uncovered by the recent x86 EFLAGS optimization. Before
that, the only instructions that ever needed unfolding were
things like CMP32rm, where NumDefs is zero.
llvm-svn: 66056
2009-03-04 19:23:38 +00:00
Chris Lattner
a41bb40458
complete comment.
...
llvm-svn: 66055
2009-03-04 19:23:25 +00:00
Chris Lattner
b5b0c87be6
this wasn't intended to be committed.
...
llvm-svn: 66054
2009-03-04 19:22:30 +00:00
Chris Lattner
5c204c92a4
Fix PR3720 by properly propagating alignment information from memcpy/memmove
...
onto element accesses.
llvm-svn: 66053
2009-03-04 19:20:50 +00:00
Daniel Dunbar
03f32e7638
ccc: Fix passing of -nozero-initialized-in-bss.
...
- PR3722.
llvm-svn: 66052
2009-03-04 19:17:10 +00:00
Nate Begeman
920438ef1d
Fix a thinko in the JIT where the address of a GV was only recorded in the map
...
on failure to resolve it.
Do not abort on failure to resolve an external symbol when using dlsym stubs,
since the symbol may not be in the JIT's address space. Just use 0.
Allow dlsym stubs to differentiate between GlobalVars and Functions.
llvm-svn: 66050
2009-03-04 19:10:38 +00:00
Mike Stump
8473a12bfe
Move more blocks CodeGenFunction code up and out.
...
llvm-svn: 66049
2009-03-04 19:03:44 +00:00
Mike Stump
06acea8a69
Move some of the CodeGenFunction blocks code up and out. No
...
functionality change.
llvm-svn: 66048
2009-03-04 18:57:26 +00:00
Mike Stump
6c39666a77
Move more of the blocks code up and out.
...
llvm-svn: 66046
2009-03-04 18:47:42 +00:00
Steve Naroff
d1b64be776
Partial fix for <rdar://problem/6645157> [clang on Xcode; regression]: error: instance variable 'someField' is private.
...
A recent regression caused by http://llvm.org/viewvc/llvm-project?rev=65912&view=rev .
This commit isn't fully baked. Nevertheless, it should cause Xcode to compile again. Will speak with Fariborz offline.
llvm-svn: 66045
2009-03-04 18:34:24 +00:00
Chris Lattner
2b19a65864
fixes suggested by Sebastian!
...
llvm-svn: 66044
2009-03-04 18:24:58 +00:00
Devang Patel
4b6e4bb25d
Refactor code.
...
llvm-svn: 66043
2009-03-04 18:21:39 +00:00
Mike Stump
95435674f9
Move more of blocks codegen out of CodeGenModule and into the
...
BlockModule. No functionality change. This should help people that
don't want to know anything about blocks not be confused by the
overloaded use of the term block or nor want to see all the blocks
goop.
llvm-svn: 66042
2009-03-04 18:17:45 +00:00
Fariborz Jahanian
4f4de6c27f
Some refactoring of recent code. No functionality change.
...
llvm-svn: 66041
2009-03-04 18:15:57 +00:00
Fariborz Jahanian
c2371eadd6
Fix a corner case of message lookup looking for class methods.
...
If all else failed, find the message in class's root's
list of instacne methods!
llvm-svn: 66040
2009-03-04 17:50:39 +00:00
Bob Wilson
5b15d01ff3
Fix BuildVectorSDNode::isConstantSplat to handle one-element vectors.
...
It is an error to call APInt::zext with a size that is equal to the value's
current size, so use zextOrTrunc instead.
llvm-svn: 66039
2009-03-04 17:47:01 +00:00