| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
class of attributes. This makes it much easier to check for errors and to reuse
the code.
llvm-svn: 169336
|
|
|
|
|
|
| |
occasionally deleted in the MemoryMappingLayout destructor.
llvm-svn: 169335
|
|
|
|
|
|
| |
runtime. If we cant prove statically that the pointers are disjoint then we add the runtime check.
llvm-svn: 169334
|
|
|
|
| |
llvm-svn: 169331
|
|
|
|
|
|
|
|
|
|
|
| |
This ensures that even though it comes first, we pick up its .o files.
Note that if we can use this (or something similar / equivalent) on
other platforms, we could potentially remove
ReplaceOperatorsNewAndDelete from the ASan runtimes.
We should probably do something similar for TSan and MSan as well.
llvm-svn: 169328
|
|
|
|
| |
llvm-svn: 169325
|
|
|
|
|
|
|
| |
reduction variable is not used outside the loop then we ran into an
endless loop. This change checks if we found the original PHI.
llvm-svn: 169324
|
|
|
|
|
|
|
| |
Allow the central functions to be inlined, and use the argumentless
isHint() function when possible.
llvm-svn: 169319
|
|
|
|
| |
llvm-svn: 169318
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change attempts to simplify (X^Y) -> X or Y in the user's context if we know that
only bits from X or Y are demanded.
A minimized case is provided bellow. This change will simplify "t>>16" into "var1 >>16".
=============================================================
unsigned foo (unsigned val1, unsigned val2) {
unsigned t = val1 ^ 1234;
return (t >> 16) | t; // NOTE: t is used more than once.
}
=============================================================
Note that if the "t" were used only once, the expression would be finally optimized as well.
However, with with this change, the optimization will take place earlier.
Reviewed by Nadav, Thanks a lot!
llvm-svn: 169317
|
|
|
|
|
|
|
|
| |
these are the *non-volatile* registers on Darwin/i386, not the
volatile registers.
Recognize the sp, pc, fp generic reg names as well.
llvm-svn: 169316
|
|
|
|
| |
llvm-svn: 169315
|
|
|
|
|
|
| |
using multiclass.
llvm-svn: 169314
|
|
|
|
|
|
| |
Apperently the git tag causes trouble in some scripts.
llvm-svn: 169313
|
|
|
|
|
|
|
|
|
| |
The count attribute is more accurate with regards to the size of an array. It
also obviates the upper bound attribute in the subrange. We can also better
handle an unbound array by setting the count to -1 instead of the lower bound to
1 and upper bound to 0.
llvm-svn: 169312
|
|
|
|
|
|
|
|
|
| |
The count attribute is more accurate with regards to the size of an array. It
also obviates the upper bound attribute in the subrange. We can also better
handle an unbound array by setting the count to -1 instead of the lower bound to
1 and upper bound to 0.
llvm-svn: 169311
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the link command. This all works fine when the driver is also responsible for
adding -lstdc++ to the link command. But, if -lstdc++ (or libstdc++.a, etc) is
passed explicitly to the driver, the ASan runtime will appear in the link
command after the standard library, leading to multiple-definition errors for
the global 'operator new' and 'operator delete'. Fix this in a painfully
simple way, by inserting libclang_rt.asan.a at the start of the link command
instead of the end.
If we need to do something more clever, we can walk the link command looking
for something that resembles libstdc++ and insert libclang_rt.asan.a as late
as possible, but the simple solution works for now.
llvm-svn: 169310
|
|
|
|
| |
llvm-svn: 169309
|
|
|
|
| |
llvm-svn: 169308
|
|
|
|
|
|
|
|
| |
<declaration> tag of Comment XML and fixed a
missing block literal printout as result of the testing.
// rdar://12378714
llvm-svn: 169307
|
|
|
|
| |
llvm-svn: 169306
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reapplies the fix for PR13303 now with more justification. Based on my
execution of the GDB 7.5 test suite this results in:
expected passes: 16101 -> 20890 (+30%)
unexpected failures: 4826 -> 637 (-77%)
There are 23 checks that used to pass and now fail. They are all in
gdb.reverse. Investigating a few looks like they were accidentally passing
due to extra breakpoints being set by this bug. They're generally due to the
difference in end location between gcc and clang, the test suite is trying to
set breakpoints on the closing '}' that clang doesn't associate with any
instructions.
llvm-svn: 169304
|
|
|
|
| |
llvm-svn: 169303
|
|
|
|
|
|
|
|
|
|
|
|
| |
type of an Objective-C selector, don't bother
making the expression parser resolve it all over
again. Just send the message straight to the
object pointer as if it were an id, and cast the
result.
<rdar://problem/12799087>
llvm-svn: 169300
|
|
|
|
|
|
|
|
|
| |
them while making our initial run through the
Objective-C runtime's class tables.
<rdar://problem/12799087>
llvm-svn: 169299
|
|
|
|
| |
llvm-svn: 169295
|
|
|
|
| |
llvm-svn: 169293
|
|
|
|
|
|
| |
in the triple.
llvm-svn: 169292
|
|
|
|
|
|
|
|
|
| |
textually as NativeClient. Also added a link to the native client project for
readers unfamiliar with it.
A Clang patch will follow shortly.
llvm-svn: 169291
|
|
|
|
|
|
| |
// rdar://12378714
llvm-svn: 169289
|
|
|
|
| |
llvm-svn: 169288
|
|
|
|
|
|
|
|
| |
trailing/leading zeros)
instructions.
llvm-svn: 169287
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Adds recovery for structural errors in clang-format.
Reviewers: djasper
Reviewed By: djasper
CC: cfe-commits, silvas
Differential Revision: http://llvm-reviews.chandlerc.com/D164
llvm-svn: 169286
|
|
|
|
|
|
|
| |
after the fixed size block header when generating
captured block variable info. // rdar://12773256
llvm-svn: 169285
|
|
|
|
| |
llvm-svn: 169284
|
|
|
|
|
|
| |
include .ll files. Fix that.
llvm-svn: 169283
|
|
|
|
| |
llvm-svn: 169282
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on 64-bit PowerPC ELF.
The patch includes code to handle external assembly and MC output with the
integrated assembler. It intentionally does not support the "old" JIT.
For the initial-exec TLS model, the ABI requires the following to calculate
the address of external thread-local variable x:
Code sequence Relocation Symbol
ld 9,x@got@tprel(2) R_PPC64_GOT_TPREL16_DS x
add 9,9,x@tls R_PPC64_TLS x
The register 9 is arbitrary here. The linker will replace x@got@tprel
with the offset relative to the thread pointer to the generated GOT
entry for symbol x. It will replace x@tls with the thread-pointer
register (13).
The two test cases verify correct assembly output and relocation output
as just described.
PowerPC-specific selection node variants are added for the two
instructions above: LD_GOT_TPREL and ADD_TLS. These are inserted
when an initial-exec global variable is encountered by
PPCTargetLowering::LowerGlobalTLSAddress(), and later lowered to
machine instructions LDgotTPREL and ADD8TLS. LDgotTPREL is a pseudo
that uses the same LDrs support added for medium code model's LDtocL,
with a different relocation type.
The rest of the processing is straightforward.
llvm-svn: 169281
|
|
|
|
| |
llvm-svn: 169280
|
|
|
|
| |
llvm-svn: 169279
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D163
llvm-svn: 169278
|
|
|
|
| |
llvm-svn: 169277
|
|
|
|
|
|
| |
Patch by Jyun-Yan You.
llvm-svn: 169276
|
|
|
|
| |
llvm-svn: 169275
|
|
|
|
|
| |
Review: http://llvm-reviews.chandlerc.com/D162
llvm-svn: 169274
|
|
|
|
| |
llvm-svn: 169273
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: djasper, klimek
Reviewed By: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D161
llvm-svn: 169272
|
|
|
|
| |
llvm-svn: 169271
|
|
|
|
| |
llvm-svn: 169270
|
|
|
|
|
|
| |
of grep in favor of FileCheck, and other cleanups.
llvm-svn: 169269
|