Rafael Espindola
e4e4e37580
Expose more passes to the C API.
...
llvm-svn: 129087
2011-04-07 18:20:46 +00:00
Daniel Dunbar
6b58486466
Frontend: Sketch support for -diagnostic-log-file, which still doesn't do anything.
...
llvm-svn: 129086
2011-04-07 18:11:14 +00:00
Argyrios Kyrtzidis
2f8165b685
Enhance the Rewriter.
...
-Allow removing a line completely if it ends up empty
-Provide more control on what should be removed.
llvm-svn: 129085
2011-04-07 18:10:12 +00:00
Argyrios Kyrtzidis
3fd80c1f1a
Add FullSourceLoc::BeforeThanCompare. a comparison function class, useful for sorting FullSourceLocs.
...
llvm-svn: 129084
2011-04-07 18:10:07 +00:00
Daniel Dunbar
529c03bc1e
Driver: Sketch driver support for a CC_LOG_DIAGNOSTICS options, similar to the
...
existing CC_PRINT_OPTIONS and CC_PRINT_HEADERS, which can be used to
transparently capture the compiler diagnostics from a build.
llvm-svn: 129082
2011-04-07 18:01:20 +00:00
Jakob Stoklund Olesen
994c16833c
Avoid moving iterators when the previous block was just visited.
...
llvm-svn: 129081
2011-04-07 17:27:50 +00:00
Jakob Stoklund Olesen
1c0db0fd21
Prefer multiplications to divisions.
...
llvm-svn: 129080
2011-04-07 17:27:48 +00:00
Jakob Stoklund Olesen
6d2bbc1c20
Extract SpillPlacement::addLinks for handling the special transparent blocks.
...
llvm-svn: 129079
2011-04-07 17:27:46 +00:00
Devang Patel
197c35298a
While hoisting common code from if/else, hoist debug info intrinsics if they match.
...
llvm-svn: 129078
2011-04-07 17:27:36 +00:00
Tanya Lattner
266792a55a
Prevent ARM DAG Combiner from doing an AND or OR combine on an illegal vector type (vectors of size 3). Also included test cases.
...
llvm-svn: 129074
2011-04-07 15:24:20 +00:00
Jay Foad
65bef04ea7
Fix a bit of nonsense.
...
llvm-svn: 129073
2011-04-07 12:41:09 +00:00
Ken Dyck
bb4e977218
[Reapply r128776, modified so that it does not break debug info.]
...
Change the return type of CodeGenVTables::getVirtualBaseOffsetOffset() to
CharUnits. No change in functionality intended.
llvm-svn: 129072
2011-04-07 12:37:09 +00:00
Stephen Wilson
f6e259049d
Removed use of NSEC_PER_SEC.
...
NSEC_PER_SEC is not defined in sys/time.h on Linux. Replaced that macro with a
static constant inside TimeValue.
Patch by Marco Minutoli.
llvm-svn: 129071
2011-04-07 10:27:22 +00:00
Stephen Wilson
78709173d2
Add a missing header
...
strtoul() is defined in stdlib.h and the header was missing in
StringExtractor.cpp.
Patch by Marco Minutoli!
llvm-svn: 129070
2011-04-07 10:20:23 +00:00
Stephen Wilson
0682ba2f2e
linux: remove ProcessLinux::FindProcesses
...
This method only needs to be overridden in the remote debugging case, the
base class handles the host case. Since we do not do remote debugging on
Linux yet and there is a typo that causes a build issue, just remove this
method for now.
llvm-svn: 129069
2011-04-07 10:16:53 +00:00
Abramo Bagnara
7ccce98861
In C++ the argument of logical not should always be bool. Added missing implicit cast for scalars.
...
llvm-svn: 129066
2011-04-07 09:26:19 +00:00
John McCall
319963434c
Basic, untested implementation for an "unknown any" type requested by LLDB.
...
The idea is that you can create a VarDecl with an unknown type, or a
FunctionDecl with an unknown return type, and it will still be valid to
access that object as long as you explicitly cast it at every use. I'm
still going back and forth about how I want to test this effectively, but
I wanted to go ahead and provide a skeletal implementation for the LLDB
folks' benefit and because it also improves some diagnostic goodness for
placeholder expressions.
llvm-svn: 129065
2011-04-07 08:22:57 +00:00
Chris Lattner
5ddaab1789
add faust too
...
llvm-svn: 129053
2011-04-07 03:09:21 +00:00
Chris Lattner
caefe9346d
add a few late stragglers.
...
llvm-svn: 129052
2011-04-07 03:08:22 +00:00
Sean Callanan
6c6be946fc
Fixed a bug where missing EDInstInfo would cause
...
tokenization to crash and burn.
llvm-svn: 129051
2011-04-07 01:56:01 +00:00
Johnny Chen
313ec7953a
Sanity check MSRi for invalid mask values and reject it as invalid.
...
rdar://problem/9246844
llvm-svn: 129050
2011-04-07 01:37:34 +00:00
Eli Friedman
c5f22a7815
PR9634: Don't unconditionally tell the AliasSetTracker that the PreheaderLoad
...
is equivalent to any other relevant value; it isn't true in general.
If it is equivalent, the LoopPromoter will tell the AST the equivalence.
Also, delete the PreheaderLoad if it is unused.
Chris, since you were the last one to make major changes here, can you check
that this is sane?
llvm-svn: 129049
2011-04-07 01:35:06 +00:00
Ken Dyck
3a09bc5ab0
[Reapply r128773. This is not the source of the issues Devang was seeing
...
with debug info.]
Use CharUnits for the offsets in the VirtualBaseClassOffsetOffsetsMapTy. No
change in functionality intended.
llvm-svn: 129048
2011-04-07 01:22:42 +00:00
Johnny Chen
c0e86fb965
The ARM disassembler was not recognizing USADA8 instruction. Need to add checking for register values
...
for USAD8 and USADA8.
rdar://problem/9247060
llvm-svn: 129047
2011-04-07 01:05:52 +00:00
Ken Dyck
25c82240e9
[Reapply r128771. It wasn't the source of the issues Devang saw with debug
...
info.]
Use CharUnits for the offset type in the ClassNamesAndOffsets map in
dumpLayout(). No change in functionality intended.
llvm-svn: 129046
2011-04-07 00:59:42 +00:00
Evan Cheng
a7c7b54dde
Change -arm-divmod-libcall to a target neutral option.
...
llvm-svn: 129045
2011-04-07 00:58:44 +00:00
Evan Cheng
b7c9c407f9
Remove dead code. rdar://9221736.
...
llvm-svn: 129044
2011-04-07 00:56:37 +00:00
Ken Dyck
42a9d29c2c
Reapply r128770. It's not the cause of the issues Devang saw with debug info.
...
Use CharUnits for the offsets in the VBaseOffsetOffsetsMapTy types. No
change in functionality intended.
llvm-svn: 129043
2011-04-07 00:55:01 +00:00
Johnny Chen
d4cced54b3
Should also check SMLAD for invalid register values.
...
rdar://problem/9246650
llvm-svn: 129042
2011-04-07 00:50:25 +00:00
Devang Patel
e48ddf863b
Simplify. isIdenticalToWhenDefined() checks opcode.
...
llvm-svn: 129041
2011-04-07 00:30:15 +00:00
Nick Lewycky
561f1755cc
Set unnamed_addr on strings created through the IRBuilder.
...
llvm-svn: 129040
2011-04-07 00:14:29 +00:00
Nick Lewycky
9363fdc9b7
Add support for ArrayRef in IRBuilder's CreateCall.
...
llvm-svn: 129039
2011-04-07 00:03:25 +00:00
Owen Anderson
bdff1c997a
Teach the ARM peephole optimizer that RSB, RSC, ADC, and SBC can be used for folded comparisons, just like ADD and SUB.
...
llvm-svn: 129038
2011-04-06 23:35:59 +00:00
Caroline Tice
c1bcafd8c1
Translate dwarf register numbers to internal register numbers
...
before trying to look them up in register contexts, in the
emulation callback functions that read & write the frame registers.
llvm-svn: 129037
2011-04-06 23:30:18 +00:00
Owen Anderson
f9bd6bad8a
Cleanups from Jim: remove redundant constraints and a dead FIXME.
...
llvm-svn: 129036
2011-04-06 22:45:55 +00:00
Devang Patel
d715ec82b4
While folding branch to a common destination into a predecessor, copy dbg values also.
...
llvm-svn: 129035
2011-04-06 22:37:20 +00:00
Jim Grosbach
6ade7e0bac
Tidy up.
...
llvm-svn: 129034
2011-04-06 22:35:47 +00:00
Johnny Chen
bd9a4f8d07
A8.6.393
...
The ARM disassembler should reject invalid (type, align) encodings as invalid instructions.
So, instead of:
Opcode=1641 Name=VST2b32_UPD Format=ARM_FORMAT_NLdSt(30)
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
-------------------------------------------------------------------------------------------------
| 1: 1: 1: 1| 0: 1: 0: 0| 0: 0: 0: 0| 0: 0: 1: 1| 0: 0: 0: 0| 1: 0: 0: 1| 1: 0: 1: 1| 0: 0: 1: 1|
-------------------------------------------------------------------------------------------------
vst2.32 {d0, d2}, [r3, :256], r3
we now have:
Opcode=1641 Name=VST2b32_UPD Format=ARM_FORMAT_NLdSt(30)
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
-------------------------------------------------------------------------------------------------
| 1: 1: 1: 1| 0: 1: 0: 0| 0: 0: 0: 0| 0: 0: 1: 1| 0: 0: 0: 0| 1: 0: 0: 1| 1: 0: 1: 1| 0: 0: 1: 1|
-------------------------------------------------------------------------------------------------
mc-input.txt:1:1: warning: invalid instruction encoding
0xb3 0x9 0x3 0xf4
^
llvm-svn: 129033
2011-04-06 22:14:48 +00:00
Jim Grosbach
9c14679260
tidy up.
...
llvm-svn: 129032
2011-04-06 22:13:52 +00:00
Jakob Stoklund Olesen
8ce2f43694
Also account for the spill code that would be inserted in live-through blocks with interference.
...
llvm-svn: 129030
2011-04-06 21:32:41 +00:00
Jakob Stoklund Olesen
81439a83f4
Abort the constraint calculation early when all positive bias is lost.
...
Without any positive bias, there is nothing for the spill placer to to. It will
spill everywhere.
llvm-svn: 129029
2011-04-06 21:32:38 +00:00
Nick Lewycky
469d171ae2
Fix typo in doxy-comment.
...
llvm-svn: 129028
2011-04-06 20:54:07 +00:00
Johnny Chen
2ac486e387
A8.6.92 MCR (Encoding A1): if coproc == '101x' then SEE "Advanced SIMD and VFP"
...
Since these "Advanced SIMD and VFP" instructions have more specfic encoding bits
specified, if coproc == 10 or 11, we should reject the insn as invalid.
rdar://problem/9239922
rdar://problem/9239596
llvm-svn: 129027
2011-04-06 20:49:02 +00:00
John McCall
26d365e149
I can't figure out any reasonable way to make this test non-host-dependent,
...
so I'm killing it.
llvm-svn: 129026
2011-04-06 20:46:42 +00:00
Nick Lewycky
0cbfcb2b6d
Fix comment to use llvm 2.x syntax.
...
llvm-svn: 129025
2011-04-06 20:38:44 +00:00
Nick Lewycky
e30f330393
Replace const std::vector& with ArrayRef in the type creation APIs.
...
llvm-svn: 129024
2011-04-06 20:28:34 +00:00
Jakob Stoklund Olesen
6895b87dfe
Keep track of the number of positively biased nodes when adding constraints.
...
If there are no positive nodes, the algorithm can be aborted early.
llvm-svn: 129021
2011-04-06 19:14:00 +00:00
Jakob Stoklund Olesen
36b5d8a698
Break the spill placement algorithm into three parts: prepare, addConstraints, and finish.
...
This will allow us to abort the algorithm early if it is determined to be futile.
llvm-svn: 129020
2011-04-06 19:13:57 +00:00
Roman Divacky
620f6967e0
Fix a typo.
...
llvm-svn: 129019
2011-04-06 19:12:21 +00:00
Greg Clayton
15eb2558ef
Update the linux platform to use the new Host::FindProcesses functionality.
...
llvm-svn: 129018
2011-04-06 18:50:36 +00:00