Enrico Granata
5c5ae47a8f
Patch from Daniel Malea to fix the build on Linux. Thanks
...
llvm-svn: 163332
2012-09-06 17:10:14 +00:00
Enrico Granata
4e0b1eda9a
Enabling the UTF conversion routines that were previously conditionally ifdef'ed out. This change is required to support enhancements in the LLDB data formatters
...
llvm-svn: 163331
2012-09-06 17:03:42 +00:00
Aaron Ballman
9c00446d2a
Fixing the return type information for objc_sync_enter and objc_sync_exit. Patch thanks to Joe Ranieri!
...
llvm-svn: 163330
2012-09-06 16:44:16 +00:00
Fariborz Jahanian
66c93f443d
c: make __attribute__((unused)) transitive.
...
Don't warn if annotated decl is used inside another
unused. // rdar://12233989
llvm-svn: 163329
2012-09-06 16:43:18 +00:00
Jakob Stoklund Olesen
83859e7728
Tighten up regexps some more.
...
These tests were failing for me because the .* was greedily matching up
to the /libexec/ld-elf.so.1" later on the same line.
llvm-svn: 163328
2012-09-06 16:29:03 +00:00
Roman Divacky
6d6c3110b5
Remove unused typedefs. Found by gcc48.
...
llvm-svn: 163327
2012-09-06 16:14:37 +00:00
Dmitry Vyukov
23ecb4acd9
tsan: fix code style
...
llvm-svn: 163326
2012-09-06 16:11:30 +00:00
Roman Divacky
e637711ae0
Dont cast away const needlessly. Found by gcc48 -Wcast-qual.
...
llvm-svn: 163325
2012-09-06 15:59:27 +00:00
Roman Divacky
4717a8d654
Dont cast away const needlessly. Found by gcc48 -Wcast-qual.
...
llvm-svn: 163324
2012-09-06 15:42:13 +00:00
Tim Northover
00e071ad52
Diagnose invalid alignments on duplicating VLDn instructions.
...
Patch by Chris Lidbury.
llvm-svn: 163323
2012-09-06 15:27:12 +00:00
Dmitry Vyukov
c87e7280b8
tsan: increase max shadow stack size + reduce memory consumption at the same time (by not memorizing full stacks in traces)
...
llvm-svn: 163322
2012-09-06 15:18:14 +00:00
Tim Northover
fb3cdd83b0
Check for invalid alignment values when decoding VLDn/VSTn (single ln) instructions.
...
Patch by Chris Lidbury.
llvm-svn: 163321
2012-09-06 15:17:49 +00:00
Dmitry Vyukov
50d49238a6
tsan: fix Go build script
...
llvm-svn: 163320
2012-09-06 15:10:19 +00:00
Arnold Schwaighofer
8dc34cfb99
BasicAA: Recognize cyclic NoAlias phis
...
Enhances basic alias analysis to recognize phis whose first incoming values are
NoAlias and whose other incoming values are just the phi node itself through
some amount of recursion.
Example: With this change basicaa reports that ptr_phi and ptr_phi2 do not alias
each other.
bb:
ptr = ptr2 + 1
loop:
ptr_phi = phi [bb, ptr], [loop, ptr_plus_one]
ptr2_phi = phi [bb, ptr2], [loop, ptr2_plus_one]
...
ptr_plus_one = gep ptr_phi, 1
ptr2_plus_one = gep ptr2_phi, 1
This enables the elimination of one load in code like the following:
extern int foo;
int test_noalias(int *ptr, int num, int* coeff) {
int *ptr2 = ptr;
int result = (*ptr++) * (*coeff--);
while (num--) {
*ptr2++ = *ptr;
result += (*coeff--) * (*ptr++);
}
*ptr = foo;
return result;
}
Part 2/2 of fix for PR13564.
llvm-svn: 163319
2012-09-06 14:41:53 +00:00
Tim Northover
262f6f564f
Use correct part of complex operand to encode VST1 alignment.
...
Patch by Chris Lidbury.
llvm-svn: 163318
2012-09-06 14:36:55 +00:00
Arnold Schwaighofer
76dca58c66
BasicAA: GEPs of NoAlias'ing base ptr with equivalent indices are NoAlias
...
If we can show that the base pointers of two GEPs don't alias each other using
precise analysis and the indices and base offset are equal then the two GEPs
also don't alias each other.
This is primarily needed for the follow up patch that analyses NoAlias'ing PHI
nodes.
Part 1/2 of fix for PR13564.
llvm-svn: 163317
2012-09-06 14:31:51 +00:00
Nadav Rotem
9e3cc9f884
Disable stack coloring by default in order to resolve the i386 failures.
...
llvm-svn: 163316
2012-09-06 14:27:06 +00:00
Tom Stellard
b7246a763b
Tablegen: Add OperandWithDefaultOps Operand type
...
This Operand type takes a default argument, and is initialized to
this value if it does not appear in a patter.
llvm-svn: 163315
2012-09-06 14:15:52 +00:00
Alexander Potapenko
35bc23ce58
Fix two compiler warnings: must use at least one argument for "..." in a variadic macros, signed vs. unsigned comparison.
...
llvm-svn: 163314
2012-09-06 13:31:13 +00:00
Evgeniy Stepanov
65fb0a5425
[asan] Use __ANDROID__ guard in asan_test.
...
llvm-svn: 163313
2012-09-06 12:50:28 +00:00
Elena Demikhovsky
42777877c2
AVX2 optimization.
...
Added generation of VPSHUB instruction for <32 x i8> vector shuffle when possible.
llvm-svn: 163312
2012-09-06 12:42:01 +00:00
Alexander Potapenko
3ecf916c33
Use the return value of dladdr() to avoid Clang warning.
...
llvm-svn: 163311
2012-09-06 12:18:45 +00:00
Nadav Rotem
a8e15b0892
Fix a few old-GCC warnings. No functional change.
...
llvm-svn: 163309
2012-09-06 11:13:55 +00:00
Kostya Serebryany
f9caa28ccf
[asan] increase max stack size to 256 (+test)
...
llvm-svn: 163308
2012-09-06 10:57:03 +00:00
Nadav Rotem
ea0d36be95
Fix the test by specifying an exact cpu model.
...
llvm-svn: 163307
2012-09-06 10:33:33 +00:00
James Molloy
9d30dc2432
Fix self-host; ensure signedness is consistent.
...
llvm-svn: 163306
2012-09-06 10:32:08 +00:00
Hans Wennborg
feb4d07d88
Fix switch_to_lookup_table.ll test from r163302.
...
The lookup tables did not get built in a deterministic order.
This makes them get built in the order that the corresponding phi nodes
were found.
llvm-svn: 163305
2012-09-06 10:10:35 +00:00
James Molloy
49bdbce8e1
Improve codegen for BUILD_VECTORs on ARM.
...
If we have a BUILD_VECTOR that is mostly a constant splat, it is often better to splat that constant then insertelement the non-constant lanes instead of insertelementing every lane from an undef base.
llvm-svn: 163304
2012-09-06 09:55:02 +00:00
Alexey Samsonov
0fcf09ede6
Update AddressSanitizer docs
...
llvm-svn: 163303
2012-09-06 09:49:03 +00:00
Hans Wennborg
8a62fc5294
Build lookup tables for switches (PR884)
...
This adds a transformation to SimplifyCFG that attemps to turn switch
instructions into loads from lookup tables. It works on switches that
are only used to initialize one or more phi nodes in a common successor
basic block, for example:
int f(int x) {
switch (x) {
case 0: return 5;
case 1: return 4;
case 2: return -2;
case 5: return 7;
case 6: return 9;
default: return 42;
}
This speeds up the code by removing the hard-to-predict jump, and
reduces code size by removing the code for the jump targets.
llvm-svn: 163302
2012-09-06 09:43:28 +00:00
Alexander Potapenko
447ff70280
Add "movsbl %dh, %ecx" and "testb %r8, %r8" to mach_override.
...
This should fix http://code.google.com/p/address-sanitizer/issues/detail?id=105
llvm-svn: 163301
2012-09-06 09:38:27 +00:00
Alexey Samsonov
36853a7a3b
[ASan] actually remove old makefile
...
llvm-svn: 163300
2012-09-06 09:30:09 +00:00
Nadav Rotem
7c277da364
Add a new optimization pass: Stack Coloring, that merges disjoint static allocations (allocas). Allocas are known to be
...
disjoint if they are marked by disjoint lifetime markers (@llvm.lifetime.XXX intrinsics).
llvm-svn: 163299
2012-09-06 09:17:37 +00:00
James Molloy
34e9931bec
Optimize codegen for VSETLNi{8,16,32} operating on Q registers. Degenerate to a VSETLN on D registers, instead of an (INSERT_SUBREG (VSETLN (EXTRACT_SUBREG ))) sequence to help the register coalescer.
...
llvm-svn: 163298
2012-09-06 09:16:01 +00:00
Alexey Samsonov
fdff4a8e0b
[TSan] add support for running external symbolizer other than addr2line (for testing purposes)
...
llvm-svn: 163297
2012-09-06 08:48:43 +00:00
Alexey Samsonov
3ebf2fa654
[Sanitizer] remove unused field
...
llvm-svn: 163296
2012-09-06 08:47:38 +00:00
Michael Liao
2d95a2b5c4
Remove duplicated helper function
...
llvm-svn: 163295
2012-09-06 07:11:22 +00:00
Alexey Samsonov
ac87a5bddc
[ASan] Nuke output_tests/ in favor of lit_tests/. Stop using Makefile.old.
...
llvm-svn: 163294
2012-09-06 06:39:02 +00:00
Craig Topper
f3e4aa8cdd
Use iPTR instead of i32 for extract_subvector/insert_subvector index in lowering and patterns. This makes it consistent with the incoming DAG nodes from the DAG builder.
...
llvm-svn: 163293
2012-09-06 06:09:01 +00:00
Craig Topper
daa5ed1e0a
Add patterns for converting stores of subvector_extracts of lower 128-bits of a 256-bit vector to VMOVAPSmr/VMOVUPSmr.
...
llvm-svn: 163292
2012-09-06 05:15:01 +00:00
Kostya Serebryany
ae350f66d4
[asan] increase the maximal size of malloc/free stack
...
llvm-svn: 163291
2012-09-06 04:46:47 +00:00
Jim Grosbach
2c1b00a991
Revert "Enable MCJIT tests on Darwin."
...
This reverts commit 163278.
Works OK on x86_64, but not i386. Will re-enable when that's cleared up.
llvm-svn: 163290
2012-09-06 03:24:09 +00:00
NAKAMURA Takumi
ffa157177e
Whitespace.
...
llvm-svn: 163289
2012-09-06 03:02:56 +00:00
NAKAMURA Takumi
8a54d812c5
Unix/Signals.inc: Fix a typo. Thanks to Dani Berg!
...
llvm-svn: 163288
2012-09-06 03:01:43 +00:00
Jack Carter
0744143370
There are some Mips instructions that are lowered by the
...
assembler such as shifts greater than 32. In the case
of direct object, the code gen needs to do this lowering
since the assembler is not involved.
With the advent of the llvm-mc assembler, it also needs
to do the same lowering.
This patch makes that specific lowering code accessible
to both the direct object output and the assembler.
This patch does not affect generated output.
llvm-svn: 163287
2012-09-06 02:31:34 +00:00
Jordan Rose
6912a326b3
Fix a mistake in an HTML example code snippet.
...
Caught by Kurt Arnlund!
llvm-svn: 163286
2012-09-06 02:19:13 +00:00
Jason Molenda
9a9422a4ff
For the eEncodingIEEE754 registers in RegisterValue::SetType,
...
only accept the first matching type based on lldb's sizeofs.
<rdar://problem/12222109>
llvm-svn: 163285
2012-09-06 02:17:36 +00:00
Sean Callanan
4ed61b001c
Disable the "pretty stack trace" signal handler,
...
which can conflict with accurate crash reporting
in multithreaded contexts.
llvm-svn: 163282
2012-09-06 01:39:02 +00:00
Richard Smith
aa31b4b816
PR13775: When checking for a tag type being shadowed by some other declaration,
...
don't trample over the caller's LookupResult in the case where the check fails.
llvm-svn: 163281
2012-09-06 01:37:56 +00:00
Jim Grosbach
30c4282f88
Update function names to conform to guidelines.
...
No functional change.
llvm-svn: 163279
2012-09-06 00:59:08 +00:00