Jim Grosbach
9e1994698d
Add fixup for Thumb1 BL/BLX instructions.
...
llvm-svn: 121072
2010-12-06 23:57:07 +00:00
Sean Callanan
f6c7308bb1
Fixes to make id work as well as well as fix minor errors
...
when calling built-ins.
llvm-svn: 121070
2010-12-06 23:53:20 +00:00
Greg Clayton
a4d7830017
When shared libraries are unloaded, they are now removed from the target
...
ModuleList so they don't show up in the images. Breakpoint locations that are
in shared libraries that get unloaded will persist though so that if you
have plug-ins that load/unload and you have a breakpoint set on functions
in the plug-ins, the hit counts will persist between loads/unloads.
llvm-svn: 121069
2010-12-06 23:51:26 +00:00
Johnny Chen
3f4dc2a8a6
Add TestObjCMethods2.py to exercise more expression command sequences with objc.
...
Mark NSArray_expr() and NSString_expr() as currently failing. Both are called
from dsym and dwarf builds. So that makes the num of expected failures equal 4.
----------------------------------------------------------------------
Ran 6 tests in 19.856s
OK (expected failures=4)
llvm-svn: 121068
2010-12-06 23:50:52 +00:00
Frits van Bommel
d9df6eaa9c
Implement jump threading of 'indirectbr' by keeping track of whether we're looking for ConstantInt*s or BlockAddress*s.
...
llvm-svn: 121066
2010-12-06 23:36:56 +00:00
Howard Hinnant
9847abacb1
Getting <atomic> warmed back up. We have a hopefully more stable spec now. And I believe the intrinsic spec at http://libcxx.llvm.org/atomic_design_a.html is still good.
...
llvm-svn: 121064
2010-12-06 23:10:08 +00:00
Johnny Chen
8dcb6b96c5
Minor comment string change.
...
llvm-svn: 121063
2010-12-06 22:51:46 +00:00
Johnny Chen
e0e7febe1a
More descriptive comment string.
...
llvm-svn: 121062
2010-12-06 22:49:11 +00:00
Devang Patel
bca5b25721
Undefined value in reg 0 may need a marker to identify end of source range.
...
This will be used to truncate live range of DBG_VALUE instruction by register allocator and friends.
llvm-svn: 121061
2010-12-06 22:48:22 +00:00
Devang Patel
c24048a718
If dbg_declare() or dbg_value() is not lowered by isel then emit DEBUG message instead of creating DBG_VALUE for undefined value in reg0.
...
llvm-svn: 121059
2010-12-06 22:39:26 +00:00
Johnny Chen
35986634bc
Modify Test_Selector's comment string, too.
...
llvm-svn: 121052
2010-12-06 22:34:54 +00:00
Johnny Chen
3a820b5e54
Disambiguate the comment strings in order to be used from the .py test file.
...
llvm-svn: 121051
2010-12-06 22:33:00 +00:00
Rafael Espindola
1055f72b97
Use references to simplify the code a bit.
...
llvm-svn: 121050
2010-12-06 22:30:54 +00:00
Wesley Peck
dba03b050f
Adding bug fix that was suppose to be part of 121044.
...
patch contributed by Jack Whitham!
llvm-svn: 121049
2010-12-06 22:19:28 +00:00
Sean Callanan
88339f0fd1
Fixed a bug in which the SEL type was being resolved
...
wrongly as the target of a pointer rather than the
SEL pointer itself. This caused incorrect behavior
when dealing with Objective-C selector variables.
llvm-svn: 121048
2010-12-06 22:16:55 +00:00
Douglas Gregor
c6bd1d32bf
Objective-C pointer conversions to 'id' or qualified 'id' subsume
...
cv-qualification conversions. More specifically, there's an implicit
cv-qualification conversion (even one that drops qualifiers) when
converting to 'id' or qualified 'id'. Fixes <rdar://problem/8734046>.
llvm-svn: 121047
2010-12-06 22:09:19 +00:00
Johnny Chen
73b7b93d42
Modified main.m and TestObjCMethods.py to unbreak the test/foundation directory.
...
llvm-svn: 121046
2010-12-06 22:09:04 +00:00
Johnny Chen
ccdf435a96
Forgot to also check in this file with the previous r121036 change:
...
/lldb/trunk/test/load_unload/TestLoadUnload.py
llvm-svn: 121045
2010-12-06 22:07:36 +00:00
Wesley Peck
8da34b6c35
Fixed reversed operands for IDIV and CMP instructions in MBlaze backend.
...
Use BRAD instead of BRD for indirect branches in MBlaze backend.
patch contributed by Jack Whitham!
llvm-svn: 121044
2010-12-06 22:06:49 +00:00
Jason W Kim
495c2bb9a6
Refactor ELFObjectWriter.
...
+ ARM/X86/MBlaze now share a common RecordRelocation
+ ARM/X86/MBlaze arch specific routines are limited to GetRelocType()
llvm-svn: 121043
2010-12-06 21:57:34 +00:00
Chris Lattner
7ff0ba41bd
replace a linear scan with a symtab lookup, reduce indentation.
...
No functionality change.
llvm-svn: 121042
2010-12-06 21:53:07 +00:00
Rafael Espindola
e134b08daa
use getSymbolOffset.
...
llvm-svn: 121041
2010-12-06 21:51:55 +00:00
Chris Lattner
4dc53e37d9
Use a stronger predicate here, pointed out by Duncan
...
llvm-svn: 121040
2010-12-06 21:48:10 +00:00
Johnny Chen
224af79e80
Fail fast by raising an exception if the 'string_to_match' cannot be located
...
within the file 'filename'.
llvm-svn: 121039
2010-12-06 21:48:08 +00:00
Chris Lattner
ca335e38cf
add some DEBUG statements.
...
llvm-svn: 121038
2010-12-06 21:13:51 +00:00
Wesley Peck
6ce9b60811
Fix a 16-bit immediate value detection bug in the MBlaze delay slot filler.
...
Address more hazards in the MBlaze delay slot filler.
patch contributed by Jack Whitham!
llvm-svn: 121037
2010-12-06 21:11:01 +00:00
Johnny Chen
42dd3ce1ae
Add a test case test_lldb_process_load_and_unload_commands() for using lldb commands
...
'process load' and 'process unload' to load and unload shared library from lldb command
lines.
llvm-svn: 121036
2010-12-06 21:08:51 +00:00
John McCall
2758424d23
Split out a function to do lvalue conversion on objects; this is basically
...
FunctionArrayLvalueConversion but without the function/array decay. Generally
this is only appropriate for use sites that know the type of the expression
and thus that it can't be subject to the decays.
Also make sure we do lvalue-to-rvalue on the bases of ivar references.
llvm-svn: 121035
2010-12-06 20:48:59 +00:00
Rafael Espindola
408344017e
Another use of getSymbolOffset.
...
llvm-svn: 121034
2010-12-06 19:55:05 +00:00
Chris Lattner
bff5d86699
c/objc/c++'98 are basically done, but we want '0x support.
...
Add "clang indent" as a possible project, we really really
need it. :)
llvm-svn: 121030
2010-12-06 19:46:27 +00:00
Argyrios Kyrtzidis
7ddcb80efe
Remove a fixme which was fixed in a previous commit.
...
llvm-svn: 121029
2010-12-06 19:36:50 +00:00
Rafael Espindola
0f30fec0bd
Remove the instruction fragment to data fragment lowering since it was causing
...
freed data to be read. I will open a bug to track it being reenabled.
llvm-svn: 121028
2010-12-06 19:08:48 +00:00
Greg Clayton
6125206e80
Added more test case functions to cover more objective C functionality.
...
llvm-svn: 121027
2010-12-06 19:08:45 +00:00
Owen Anderson
c1ee8e35d2
Revert r121021, which broke the buildbots.
...
llvm-svn: 121026
2010-12-06 18:57:40 +00:00
Douglas Gregor
91df6cf85e
Use the unused merge() function, fixing an minor, unintended change I
...
introduced in r121023.
llvm-svn: 121025
2010-12-06 18:50:56 +00:00
Jim Grosbach
67f13b19b5
Trailing whitespace.
...
llvm-svn: 121024
2010-12-06 18:47:44 +00:00
Douglas Gregor
bf62d647de
Re-implement caching for the linkage calculation of declarations.
...
My previous attempt at solving the compile-time problem with many
redeclarations of the same entity cached both linkage and visibility,
while this patch only tackles linkage. There are several reasons for
this difference:
- Linkage is a language concept, and is evaluated many times during
semantic analysis and codegen, while visibility is only a
code-generation concept that is evaluated only once per (unique)
declaration. Hence, we *must* optimize linkage calculations but
don't need to optimize visibility computation.
- Once we know the linkage of a declaration, subsequent
redeclarations can't change that linkage. Hence, cache
invalidation is far simpler than for visibility, where a later
redeclaration can completely change the visibility.
- We have 3 spare bits in Decl to store the linkage cache, so the
cache doesn't increase the size of declarations. With the
visibility+linkage cache, NamedDecl got larger.
llvm-svn: 121023
2010-12-06 18:36:25 +00:00
John McCall
9bc2677b8c
Do unary conversions on vararg arguments and *then* special-case float.
...
Fixes PR8742.
llvm-svn: 121022
2010-12-06 18:36:11 +00:00
Owen Anderson
bb4a76fc95
Improve handling of Thumb2 PC-relative loads by converting LDRpci (and friends) to Pseudos.
...
llvm-svn: 121021
2010-12-06 18:35:51 +00:00
Jim Grosbach
968c927201
Encode the register operand of ARM CondCode operands correctly. ARM::CPSR if
...
the instruction is predicated, reg0 otherwise.
llvm-svn: 121020
2010-12-06 18:30:57 +00:00
Johnny Chen
761c205274
Add two test cases to exercise many expression commands:
...
o test_many_expr_commands()
o test_expr_commands_can_handle_quotes()
Mark test_expr_commands_can_handle_quotes()
as @expectedFailure:
# rdar://problem/8686536
# CommandInterpreter::HandleCommand is stripping \'s from input for WantsRawCommand commands
llvm-svn: 121019
2010-12-06 18:24:18 +00:00
Jim Grosbach
0bfb4d5043
The ARM AsmMatcher needs to know that the CCOut operand is a register value,
...
not an immediate. It stores either ARM::CPSR or reg0.
llvm-svn: 121018
2010-12-06 18:21:12 +00:00
Devang Patel
2379f3abd5
Do not try luck by using given name to create temporary file. In parallel builds it may not work.
...
This time for .s file.
llvm-svn: 121016
2010-12-06 18:04:39 +00:00
Argyrios Kyrtzidis
e88168ae6e
Use Sema's MarkDeclarationReferenced, which takes care of templates, instead of calling Decl's setUsed directly.
...
Thanks to John for the hint!
llvm-svn: 121014
2010-12-06 17:51:53 +00:00
Argyrios Kyrtzidis
7b608976b1
Use the source location of the parameter, when it makes sense, for diagnostics in HandleCleanupAttr.
...
llvm-svn: 121013
2010-12-06 17:51:50 +00:00
Douglas Gregor
027ba500ab
Revert r120808, my previous implementation of caching for the linkage
...
and visibility of declarations, because it was extremely messy and it
increased the size of NamedDecl.
An improved implementation is forthcoming.
llvm-svn: 121012
2010-12-06 17:49:01 +00:00
Fariborz Jahanian
1321cbbd87
Add BlocksAttr assert on __block specific
...
routines.
llvm-svn: 121007
2010-12-06 17:28:17 +00:00
Rafael Espindola
44bbe36de6
Second try at making direct object emission produce the same results
...
as llc + llvm-mc. This time ELF is not changed and I tested that llvm-gcc
bootstrap on darwin10 using darwin9's assembler and linker.
llvm-svn: 121006
2010-12-06 17:27:56 +00:00
Rafael Espindola
dee3062373
Revert previous two patches while I try to find out how to make both
...
linux and darwin assemblers happy :-(
llvm-svn: 121004
2010-12-06 15:35:15 +00:00
Howard Hinnant
fd18df5b2e
Add a couple more std-qualifers.
...
llvm-svn: 121002
2010-12-06 15:11:48 +00:00