Dan Gohman
01579b20a6
Don't include the is-function-local bit in the FoldingSetNodeID
...
for MDNodes, since this information is effectively implied by
the operands. This allow allows the code to avoid doing a
recursive is-it-really-function-local check in some cases.
llvm-svn: 111995
2010-08-24 23:21:12 +00:00
Chris Lattner
05bcb488b5
split the vector case of getCopyFromParts out to its own function,
...
no functionality change.
llvm-svn: 111994
2010-08-24 23:20:40 +00:00
Dan Gohman
3d9ed28046
Use Bits.data() instead of &Bits[0].
...
llvm-svn: 111993
2010-08-24 23:16:53 +00:00
Johnny Chen
536b7d2d26
Removed the @unitest2.expectedFailure decorator. The i386 process launch works
...
correctly after all. It was my own configuration error (I was building x86_64
only).
llvm-svn: 111992
2010-08-24 23:14:47 +00:00
Ted Kremenek
cc7f215872
USRs for class extensions should "mangle" in the location of the extension. (<rdar://problem/8350262>)
...
llvm-svn: 111991
2010-08-24 23:13:41 +00:00
Chris Lattner
96a77ebd7c
split the vector case out of getCopyToParts into its own function. No
...
functionality change.
llvm-svn: 111990
2010-08-24 23:10:06 +00:00
Greg Clayton
288e5afe6b
Fixed another issue with the inline stack frames where if the first frame
...
has inlined functions that all started at the same address, then the inlined
backtrace would not produce correct stack frames.
Also cleaned up and inlined a lot of stuff in lldb_private::Address.
Added a function to StackFrame to detect if the frame is a concrete frame so
we can detect the difference between actual frames and inlined frames.
llvm-svn: 111989
2010-08-24 22:59:52 +00:00
Fariborz Jahanian
f4677b201e
Move the test for radar 8018252 to
...
SemaCXX/expressions.cpp.
llvm-svn: 111988
2010-08-24 22:55:33 +00:00
John McCall
24d189484b
When trying to resolve the address of an overloaded expression,
...
only form pointers-to-member if the expression has the appropriate
form. This avoids assertions later on on invalid code, but also
allows us to properly resolve mixed-staticity overloads.
llvm-svn: 111987
2010-08-24 22:52:39 +00:00
Sebastian Redl
401b39a736
AST writer support for having specializations of templates from earlier in the chain. This ought to finish C++ chained PCH support.
...
llvm-svn: 111986
2010-08-24 22:50:24 +00:00
Sebastian Redl
aba202b430
AST reader support for having specializations of templates from earlier in the chain.
...
llvm-svn: 111985
2010-08-24 22:50:19 +00:00
Douglas Gregor
b46e9bc26f
Remove i386 macro check from expected output of preprocessor
...
llvm-svn: 111984
2010-08-24 22:46:25 +00:00
Daniel Dunbar
d435275c59
Frontend: Add basic -H support.
...
- I didn't implement the GCC "multiple include guard" detection parts, because
it doesn't seem useful or obvious.
llvm-svn: 111983
2010-08-24 22:44:13 +00:00
Chris Lattner
5b8967f8a2
tidy up, reduce indentation
...
llvm-svn: 111982
2010-08-24 22:43:11 +00:00
Eric Christopher
15b182f4d4
Fix predicate and add a comment.
...
llvm-svn: 111981
2010-08-24 22:34:11 +00:00
Dale Johannesen
46742a4771
Add some missing X86-specific asm constraint letters, and fix
...
some bugs in setting allowsRegister on the ones there.
8348447.
llvm-svn: 111980
2010-08-24 22:33:12 +00:00
Chris Lattner
576048657e
correct the -isystem option to not add the -isysroot path. Only the weird
...
-iwithsysroot flag should do that. This fixes rdar://8345942
llvm-svn: 111979
2010-08-24 22:27:37 +00:00
Ted Kremenek
5f0c066062
Fix printf format string checking for '%lc' (which expects a wint_t or compatible argument). Fixes PR 7981.
...
llvm-svn: 111978
2010-08-24 22:24:51 +00:00
Fariborz Jahanian
e0fd5a9299
It is not error in c++ to take address of
...
register variable (c++03 7.1.1P3). radar 8108252.
llvm-svn: 111977
2010-08-24 22:21:48 +00:00
Douglas Gregor
ec00a26855
Implement code completion for preprocessor expressions and in macro
...
arguments.
llvm-svn: 111976
2010-08-24 22:20:20 +00:00
Johnny Chen
3c884a014c
Added a test for launching a universal binary. Launch of i386 architecture
...
currently fails: rdar://problem/8349784.
Forgot to check in lldbtest.py in the previous commit r111958.
llvm-svn: 111975
2010-08-24 22:07:56 +00:00
Eric Christopher
236ec8f3b5
Rework braindead conditionals I put in yesterday.
...
llvm-svn: 111974
2010-08-24 22:07:27 +00:00
Eric Christopher
6c99ebf5b0
Fix thumb2 mode loads to have the correct operand ordering. Add a todo
...
to fix this in the port.
llvm-svn: 111973
2010-08-24 22:03:02 +00:00
Owen Anderson
a10000006e
NULL loads are only invalid in the default address space.
...
llvm-svn: 111972
2010-08-24 22:00:55 +00:00
Owen Anderson
b695c83de9
Add support for inferring values for the default cases of switches.
...
llvm-svn: 111971
2010-08-24 21:59:42 +00:00
Daniel Dunbar
b44eb0b900
tests: Use REQUIRES: instead of XFAIL: for crash recovery tests; running them on
...
Windows breaks things (because it pops up dialogs) since we don't have crash
recovery support there (yet).
llvm-svn: 111970
2010-08-24 21:39:55 +00:00
Jim Grosbach
2eedb7949e
Add ARM heuristic for when to allocate a virtual base register for stack
...
access. rdar://8277890&7352504
llvm-svn: 111968
2010-08-24 21:19:33 +00:00
Kevin Enderby
a71ab07e14
Change the parsing of .loc back to allow the LineNumber field to be optional as
...
it is with other assemblers.
llvm-svn: 111967
2010-08-24 21:14:47 +00:00
Chris Lattner
4b2164cab8
Implement -iwithsysroot, an apple extension which is a close cousin of -isystem.
...
Instead of implementing -isystem, I accidentally implemented this cousin. Next
up is to implement -isystem right.
llvm-svn: 111966
2010-08-24 21:09:16 +00:00
Tom Care
a460311710
Improvements to IdempotentOperationChecker and its use of PseudoConstantAnalysis
...
- Added wasReferenced function to PseudoConstantAnalysis to determine if a variable was ever referenced in a function (outside of a self-assignment)
- BlockDeclRefExpr referenced variables are now explicitly added to the non-constant list
- Remove unnecessary ignore of implicit casts
- Generalized parameter self-assign detection to detect deliberate self-assigns of variables to avoid unused variable warnings
- Updated test cases with deliberate self-assignments
- Fixed bug with C++ references and pseudoconstants
- Added test case for C++ references and pseudoconstants
llvm-svn: 111965
2010-08-24 21:09:07 +00:00
Greg Clayton
9da7bd0739
Got a lot of the kinks worked out in the inline support after debugging more
...
complex inlined examples.
StackFrame classes don't have a "GetPC" anymore, they have "GetFrameCodeAddress()".
This is because inlined frames will have a PC value that is the same as the
concrete frame that owns the inlined frame, yet the code locations for the
frame can be different. We also need to be able to get the real PC value for
a given frame so that variables evaluate correctly. To get the actual PC
value for a frame you can use:
addr_t pc = frame->GetRegisterContext()->GetPC();
Some issues with the StackFrame stomping on its own symbol context were
resolved which were causing the information to change for a frame when the
stack ID was calculated. Also the StackFrame will now correctly store the
symbol context resolve flags for any extra bits of information that were
looked up (if you ask for a block only and you find one, you will alwasy have
the compile unit and function).
llvm-svn: 111964
2010-08-24 21:05:24 +00:00
Michael J. Spencer
ccd28d0665
Fix COFF x86-64 relocations. PR7960.
...
Multiple symbol reloc handling part of the patch by Cameron Esfahani.
llvm-svn: 111963
2010-08-24 21:04:52 +00:00
Dan Gohman
c1a8958f76
XFAIL this on mingw, following remove_arguments_test.ll.
...
llvm-svn: 111962
2010-08-24 20:54:50 +00:00
Johnny Chen
9c194e3e75
Converted to Makefile.rules.
...
llvm-svn: 111961
2010-08-24 20:54:26 +00:00
Johnny Chen
9d2bd8301d
More descriptive method doc string.
...
llvm-svn: 111960
2010-08-24 20:48:28 +00:00
Owen Anderson
da34de1599
Add support for inferring that a load from a pointer implies that it is not null.
...
llvm-svn: 111959
2010-08-24 20:47:29 +00:00
Johnny Chen
6b900c5dcd
Added a test case which uses "image lookup" command on an enum data type.
...
llvm-svn: 111958
2010-08-24 20:44:33 +00:00
John McCall
5c32be0053
Move some of SemaOverload's API to various places in Overload.h, and kill
...
some of it off completely.
llvm-svn: 111957
2010-08-24 20:38:10 +00:00
Kevin Enderby
1264b7cab8
First bit of support for the dwarf .loc directive. This patch updates the
...
needed parsing for the .loc directive and saves the current info from that
into the context. The next patch will take the current loc info after an
instruction is assembled and save that info into a vector for each section for
use to build the line number tables. The patch after that will encode the info
from those vectors into the output file as the dwarf line tables.
llvm-svn: 111956
2010-08-24 20:32:42 +00:00
Dan Gohman
b2f29edc30
Add a testcase for basic bugpointing in the presence of metadata.
...
llvm-svn: 111955
2010-08-24 20:23:51 +00:00
Douglas Gregor
127851084d
Implement preprocessor code completion where a macro name is expected,
...
e.g., after #ifdef/#ifndef or #undef, or inside a defined <macroname>
expression in a preprocessor conditional.
llvm-svn: 111954
2010-08-24 20:21:13 +00:00
Bill Wendling
3aeedd1e5a
- Add the LinkerPrivateWeakDefAutoLinkage to the Ada bindings.
...
- Support the LinkerWeak*Linkage types in llvm-nm and in LinkModules.cpp.
llvm-svn: 111952
2010-08-24 20:00:52 +00:00
Daniel Dunbar
1c8d777c93
MC/X86: Tweak imul recognition, previous hack only applies for the imul form
...
taking immediates.
llvm-svn: 111950
2010-08-24 19:37:56 +00:00
Dan Gohman
8ad536a902
Link NamedMDNodes after linking GlobalValues, so that MDNodes
...
which reference GlobalValues are properly remapped.
llvm-svn: 111949
2010-08-24 19:37:11 +00:00
Dan Gohman
3535190116
When linking NamedMDNodes, remap their operands.
...
llvm-svn: 111948
2010-08-24 19:31:04 +00:00
Daniel Dunbar
09392785b4
MC/X86: Add custom hack for recognizing "imul $12, %eax" and friends.
...
llvm-svn: 111947
2010-08-24 19:24:18 +00:00
Daniel Dunbar
2476432639
MC/AsmParser: Change ParseExpression to use ParseIdentifier(), to support
...
dollars in identifiers.
llvm-svn: 111946
2010-08-24 19:13:42 +00:00
Daniel Dunbar
94b84a19b9
MC/X86: Warn on scale factors > 1 without index register, instead of erroring,
...
for 'as' compatibility.
llvm-svn: 111945
2010-08-24 19:13:38 +00:00
Douglas Gregor
3a7ad25eb6
Introduce basic code-completion support for preprocessor directives,
...
e.g., after a "#" we'll suggest #if, #ifdef, etc.
llvm-svn: 111943
2010-08-24 19:08:16 +00:00
Jim Grosbach
b77d67f318
Move enabling the local stack allocation pass into the target where it belongs.
...
For now it's still a command line option, but the interface to the generic
code doesn't need to know that.
llvm-svn: 111942
2010-08-24 19:05:43 +00:00