Jakob Stoklund Olesen
2a82333f54
Don't include alignment padding in BBInfo.Size.
...
Compute alignment padding before and after basic blocks dynamically.
Heed basic block alignment.
This simplifies bookkeeping because we don't have to constantly add and
remove padding from BBInfo.Size. It also makes it possible to track the
extra known alignment bits we get after a tBR_JTr terminator and when
entering an aligned basic block.
This makes the ARMConstantIslandPass aware of aligned basic blocks.
It is tricky to model block alignment correctly when dealing with inline
assembly and tBR_JTr instructions that have variable size. If inline
assembly turns out to be smaller than expected, that may cause following
alignment padding to be larger than expected. This could cause constant
pool entries to move out of range.
To avoid that problem, we use the worst case alignment padding following
inline assembly. This may cause slightly suboptimal constant island
placement in aligned basic blocks following inline assembly. Normal
functions should be unaffected.
llvm-svn: 146118
2011-12-08 00:55:02 +00:00
Argyrios Kyrtzidis
bf1d884d9e
[libclang] Remove IndexingContext's getScopedContext(), it's not useful
...
now that client containers can be set via function calls.
llvm-svn: 146117
2011-12-08 00:54:07 +00:00
Jim Grosbach
9a6ba3c94e
ARM VFP support 'fmrs/fmsr' aliases for 'vldr'
...
llvm-svn: 146116
2011-12-08 00:52:55 +00:00
Jim Grosbach
086d013e56
ARM VFP support 'flds/fldd' aliases for 'vldr'
...
llvm-svn: 146115
2011-12-08 00:49:29 +00:00
Jim Grosbach
6600f520b0
ARM optional destination operand variants for VEXT instructions.
...
llvm-svn: 146114
2011-12-08 00:43:47 +00:00
Jim Grosbach
5ff64c7141
Tidy up.
...
llvm-svn: 146113
2011-12-08 00:41:54 +00:00
Chad Rosier
9646c0d046
Fix 80-column.
...
Simplify code.
llvm-svn: 146112
2011-12-08 00:38:45 +00:00
Jim Grosbach
3050625a50
ARM assembler aliases for "add Rd, #-imm" to "sub Rd, #imm".
...
llvm-svn: 146111
2011-12-08 00:31:07 +00:00
Nick Lewycky
e032cfdd65
Add Tsan annotations to the pass system.
...
Perhaps once(&func) should be hoisted into lib/Support.
llvm-svn: 146110
2011-12-08 00:15:41 +00:00
Chad Rosier
a966c31937
Fix comments.
...
llvm-svn: 146109
2011-12-08 00:11:31 +00:00
Peter Collingbourne
dff247868a
EngineBuilder: support for custom TargetOptions. Fixes the
...
ExceptionDemo example.
llvm-svn: 146108
2011-12-07 23:58:57 +00:00
Chad Rosier
42ee1522b6
Fix comments.
...
llvm-svn: 146107
2011-12-07 23:57:55 +00:00
Jim Grosbach
3b559ff3c5
ARM assembly, allow 'asl' as a synonym for 'lsl' in shifted-register operands.
...
For 'gas' compatibility.
llvm-svn: 146106
2011-12-07 23:40:58 +00:00
Akira Hatanaka
4350c183d4
Modify class ReadHardware and add definition of 64-bit version of instruction
...
RDHWR.
llvm-svn: 146101
2011-12-07 23:31:26 +00:00
Akira Hatanaka
66232aa19d
Add newline.
...
llvm-svn: 146100
2011-12-07 23:26:03 +00:00
Akira Hatanaka
36d2198dae
Add 64-bit HWR29 register.
...
llvm-svn: 146099
2011-12-07 23:23:52 +00:00
Daniel Dunbar
3ca41d4758
Driver/Linux: Fix the ASAN library path to match current compiler-rt
...
integration.
llvm-svn: 146098
2011-12-07 23:22:17 +00:00
Akira Hatanaka
9778e7a67c
32 to 64-bit anyext pattern.
...
llvm-svn: 146097
2011-12-07 23:21:19 +00:00
Akira Hatanaka
ae378af667
32 to 64-bit zext pattern.
...
llvm-svn: 146096
2011-12-07 23:14:41 +00:00
Jim Grosbach
90d961250b
ARM two-operand aliases for VAND/VEOR/VORR instructions.
...
llvm-svn: 146095
2011-12-07 23:08:12 +00:00
Daniel Dunbar
f4916cde76
Driver: Add a --rtlib={compiler-rt,libgcc} argument which I plan to use to allow
...
dual support for compiler-rt on Linux, during bringup.
llvm-svn: 146094
2011-12-07 23:03:15 +00:00
Jim Grosbach
3744a7febb
ARM two-operand aliases for VADDW instructions.
...
llvm-svn: 146093
2011-12-07 23:01:10 +00:00
Jim Grosbach
552691556c
ARM two-operand aliases for VADD instructions.
...
llvm-svn: 146091
2011-12-07 22:52:54 +00:00
Chad Rosier
16be674ec3
Flesh out a bit more of the bitcode use-list ordering preservation code.
...
Nothing too interesting at this point, but comments are welcome.
Part of rdar://9860654 and PR5680.
llvm-svn: 146090
2011-12-07 22:49:05 +00:00
Sean Callanan
610baf42ce
Fixed a few details of method lookup in Objective-C
...
symbols. Now we find the correct method.
Unfortunately we don't get the superclass from the
runtime yet so the method doesn't import correctly
(and I added a check to make sure that doesn't hurt
us) but once we get that information right we will
report methods correctly to the parser as well.
Getting superclass information requires a common AST
context for all Objective-C runtime information,
meaning that the superclass and the subclass are in
the same AST context in all cases. That is the next
thing that needs to be done here.
llvm-svn: 146089
2011-12-07 22:39:39 +00:00
Bruno Cardoso Lopes
56b70de01b
Variable cleanup. Based on past patch submittals variable names have
...
been normalized and more descriptive comments added. Patch by Reed
Kotler and Jack Carter.
llvm-svn: 146088
2011-12-07 22:35:30 +00:00
Eli Friedman
d5c173fad0
Make sure we correctly set LiveRegGens when a call is unscheduled. <rdar://problem/10460321>. No testcase because this is very sensitive to scheduling.
...
llvm-svn: 146087
2011-12-07 22:24:28 +00:00
Akira Hatanaka
b2e05cb6b1
64-bit WrapperPICPat patterns.
...
llvm-svn: 146086
2011-12-07 22:11:43 +00:00
Eli Friedman
00fda923b6
Fix <title> on webpage.
...
llvm-svn: 146085
2011-12-07 22:09:43 +00:00
Daniel Dunbar
7ce849d495
configure: Don't warn about compiler-rt checked out into projects/.
...
llvm-svn: 146084
2011-12-07 22:07:03 +00:00
Eli Friedman
0bdc083e21
Fix an assertion in the scheduler. PR11386. No testcase included because it's rather delicate.
...
llvm-svn: 146083
2011-12-07 22:06:02 +00:00
Douglas Gregor
9458f82df7
Implement inference for the "Private" submodule corresponding to
...
private headers in a framework.
llvm-svn: 146082
2011-12-07 22:05:21 +00:00
Akira Hatanaka
6820eebde1
Define base class for WrapperPICPat.
...
llvm-svn: 146081
2011-12-07 21:54:54 +00:00
Akira Hatanaka
c5b5a8d8b1
Modify LowerFCOPYSIGN to handle Mips64.
...
llvm-svn: 146080
2011-12-07 21:48:50 +00:00
Chad Rosier
dd4ffaec8f
Update bcanalyzer to handle new USELIST_BLOCK/USELIST_CODE_ENTRY.
...
llvm-svn: 146079
2011-12-07 21:45:13 +00:00
Chad Rosier
ca2567b861
Begin adding experimental support for preserving use-list ordering of bitcode
...
files. First, add a new block USELIST_BLOCK to the bitcode format. This is
where USELIST_CODE_ENTRYs will be stored. The format of the USELIST_CODE_ENTRYs
have not yet been defined. Add support in the BitcodeReader for parsing the
USELIST_BLOCK.
Part of rdar://9860654 and PR5680.
llvm-svn: 146078
2011-12-07 21:44:12 +00:00
Nick Lewycky
d63851eb93
These global variables aren't thread-safe, STATISTIC is. Andy Trick tells me
...
that he isn't using these any more, so just delete them.
llvm-svn: 146076
2011-12-07 21:35:59 +00:00
Kostya Serebryany
f0d799a6bc
[asan] fix the error message for 16-byte accesses (it previously printed 'unknown-crash')
...
llvm-svn: 146075
2011-12-07 21:30:20 +00:00
Douglas Gregor
8030677b70
Make sure we pick up module_private.map when loading a module.map file.
...
llvm-svn: 146074
2011-12-07 21:25:07 +00:00
Howard Hinnant
5ec9183afc
Reviewing cxa_exception.cpp and marking as implemented as I go. Not marking as implemented on arm when I'm not sure about that platform.
...
llvm-svn: 146072
2011-12-07 21:16:40 +00:00
Duncan Sands
851e948362
Have cmake build llvm-cov. Patch by arrowdodger.
...
llvm-svn: 146071
2011-12-07 20:54:41 +00:00
Chad Rosier
78037a900e
ValueEnumerator - debug dump().
...
llvm-svn: 146070
2011-12-07 20:44:46 +00:00
Argyrios Kyrtzidis
663c8ecda1
[libclang] Indexing API: provide both the semantic and the lexical container.
...
They are generally the same except in C++ cases like out-of-line member functions.
llvm-svn: 146069
2011-12-07 20:44:19 +00:00
Argyrios Kyrtzidis
b3c16bad20
[libclang] Fix indexing of C++ bases in a C++ class.
...
llvm-svn: 146068
2011-12-07 20:44:15 +00:00
Argyrios Kyrtzidis
520028802c
[libclang] Introduce CXIdxEntityLanguage that indicates the language
...
of an indexed entity.
llvm-svn: 146067
2011-12-07 20:44:12 +00:00
Sean Callanan
ae6d614118
Fixed a potential crasher if the frame is not
...
avalable when a global variable is looked up.
In ClangExpressionDeclMap, a frame should usually
be available.
llvm-svn: 146066
2011-12-07 20:41:47 +00:00
Akira Hatanaka
4f864b78e6
Fix comment.
...
llvm-svn: 146063
2011-12-07 20:15:01 +00:00
Akira Hatanaka
d16e926a6b
Fix comment.
...
llvm-svn: 146062
2011-12-07 20:13:53 +00:00
Jim Ingham
b35274095c
Fix assert string to be more informative.
...
llvm-svn: 146061
2011-12-07 20:10:58 +00:00
Akira Hatanaka
4a04a56a36
Fix 64-bit immediate patterns.
...
llvm-svn: 146059
2011-12-07 20:10:24 +00:00