Nadav Rotem
ed242a0f1c
Stack Coloring: When searching for disjoint regions, do not compare intervals twice or to theirself.
...
llvm-svn: 163508
2012-09-10 12:47:38 +00:00
Nadav Rotem
6731363185
Stack Coloring: Add support for multiple regions of the same slot, within a single basic block.
...
llvm-svn: 163507
2012-09-10 12:39:35 +00:00
Elena Demikhovsky
264fb0217e
The VPSHUFB 256-bit instruction may be generated when one of input vector is undefined or zeroinitializer.
...
I've added the "zeroinitializer" case in this patch.
llvm-svn: 163506
2012-09-10 12:13:11 +00:00
Benjamin Kramer
199f8da3ae
Make helper functions static.
...
llvm-svn: 163505
2012-09-10 11:57:16 +00:00
Benjamin Kramer
47b5c5713b
Make helper function static.
...
llvm-svn: 163504
2012-09-10 11:52:14 +00:00
Benjamin Kramer
1f66f885e8
Move bypassSlowDivision into the llvm namespace.
...
llvm-svn: 163503
2012-09-10 11:52:08 +00:00
Benjamin Kramer
8dd0edc7b1
c bindings: revert LLVMConstInlineAsm to always use the default asm dialect.
...
- The C API should be stable
- InlineAsm::AsmDialect is not exposed to C
- The function didn't match the prototype so this was unreachable code
llvm-svn: 163502
2012-09-10 11:52:00 +00:00
Evgeniy Stepanov
c9cdb96188
GTest on Android needs a custom tmpdir path.
...
llvm-svn: 163501
2012-09-10 10:32:29 +00:00
Evgeniy Stepanov
c9cde48f3a
Wrong crtbegin/crtend pair used for PIE on Android.
...
Android uses the same flavour of crt*.o for PIE and non-PIE executables, and a
different one for DSOs. GNU/Linux, on the other hand, uses one set of crt*.o
for non-PIE executables, and another for both PIE executables and DSOs.
llvm-svn: 163500
2012-09-10 10:30:12 +00:00
Evgeniy Stepanov
6f66ed1329
[asan] There is no __libc_malloc on Android.
...
llvm-svn: 163498
2012-09-10 10:18:49 +00:00
NAKAMURA Takumi
6eb1399088
Revert Ted's r163489 and r163490, due to breakage.
...
r163489, "Take another crack at stabilizing the emission order of analyzer"
r163490, "Use isBeforeInTranslationUnitThan() instead of operator<."
llvm-svn: 163497
2012-09-10 09:17:27 +00:00
Nadav Rotem
2f41ff93e6
Fix a typo in the comment.
...
llvm-svn: 163496
2012-09-10 08:51:46 +00:00
Nadav Rotem
28e6f8c1fc
Add an assertion that the frame index is indeed inside the declared lifetime region.
...
llvm-svn: 163495
2012-09-10 08:44:15 +00:00
Nadav Rotem
d753a952ca
Teach the DAGBuilder about lifetime markers which are generated from PHINodes.
...
llvm-svn: 163494
2012-09-10 08:43:23 +00:00
Alexander Potapenko
67192d41ee
Allow to call strchr() from __asan_init().
...
Fixes PR13794.
llvm-svn: 163493
2012-09-10 08:35:12 +00:00
Simon Atanasyan
464a7f7e89
MIPS: Use -march=arch option to select either generic MIPS ISA,
...
or the name of a particular processor.
The patch reviewed by Douglas Gregor.
llvm-svn: 163492
2012-09-10 08:32:41 +00:00
Hans Wennborg
7fd5c844af
Fix style issues from r163302 pointed out by Evan.
...
llvm-svn: 163491
2012-09-10 07:44:22 +00:00
Ted Kremenek
f1fc8ce65d
Use isBeforeInTranslationUnitThan() instead of operator<.
...
llvm-svn: 163490
2012-09-10 06:56:07 +00:00
Ted Kremenek
3d92699d3c
Take another crack at stabilizing the emission order of analyzer
...
diagnostics without using FoldingSetNodeIDs. This is done
by doing a complete recursive comparison of the PathDiagnostics.
Note that the previous method of comparing FoldingSetNodeIDs did
not end up relying on unstable things such as pointer addresses, so
I suspect this may still have some issues on various buildbots because
I'm not sure if the true source of non-determinism has been eliminated.
The tests pass for me, so the only way to know is to commit this change
and see what happens.
llvm-svn: 163489
2012-09-10 06:20:06 +00:00
Ted Kremenek
deb885a03f
Have PathDiagnosticPiece::getString() return a StringRef instead
...
of a std::string.
llvm-svn: 163488
2012-09-10 06:19:53 +00:00
Ted Kremenek
9b9ee2a616
Indent the "message" key in analyzer plist output.
...
llvm-svn: 163487
2012-09-10 06:19:43 +00:00
Ted Kremenek
dc1f6bc454
Add handy script for updating plist FileCheck expected output for
...
analyzer tests.
llvm-svn: 163486
2012-09-10 06:19:34 +00:00
Nick Lewycky
12d825d9ca
Move spaces to the right places. No functionality change.
...
llvm-svn: 163485
2012-09-09 23:41:11 +00:00
Nick Lewycky
74bf42c9a1
Add missing space before {. No functionality change.
...
llvm-svn: 163484
2012-09-09 23:40:55 +00:00
Craig Topper
03f39773e0
Teach DAG combiner to constant fold fneg of a BUILD_VECTOR of constants.
...
llvm-svn: 163483
2012-09-09 22:58:45 +00:00
Dmitri Gribenko
1d0f567f64
RawCommentList: don't copy the whole new RawComment to LastComment each time.
...
We just need a single SourceLocation for previous comment end.
llvm-svn: 163482
2012-09-09 20:47:31 +00:00
Aaron Ballman
cbb37111d7
Fixing a type width warning with MSVC.
...
llvm-svn: 163481
2012-09-09 20:34:25 +00:00
Benjamin Kramer
2b11eb0729
DSE: Poking holes into a SetVector is expensive, avoid it if possible.
...
llvm-svn: 163480
2012-09-09 16:44:05 +00:00
Ted Kremenek
e9764d8f91
Remove dead method ProgramState::MarshalState().
...
llvm-svn: 163479
2012-09-09 14:55:59 +00:00
Benjamin Kramer
851c941b8b
LiveVariables: Compute a set of defs and kills to speed up updating LV during critical edge splitting.
...
Previously we checked if the register is def'd in a block via the def/use list a
nd walked the list of kills to check if the register is killed in a block. Both
of these checks can be made much cheaper by walking the block first and
recording all defs and kills.
This reduces the compile time of the test case from PR13651 from 40s to 15s at
-O2. The compile time is still dominated by LV updating but now the main culprit
is SparseBitVector's slowness.
llvm-svn: 163478
2012-09-09 11:56:14 +00:00
Abramo Bagnara
136404985c
Added missing const.
...
llvm-svn: 163477
2012-09-09 10:21:24 +00:00
Abramo Bagnara
0678294dba
Fixed support for disabled wchar_t and added an appropriate test.
...
llvm-svn: 163476
2012-09-09 10:13:32 +00:00
Craig Topper
4ed79bd7d7
Add instruction selection for ffloor of vectors when SSE4.1 or AVX is enabled.
...
llvm-svn: 163473
2012-09-08 17:42:27 +00:00
Tobias Grosser
eeb776a41f
SCEVValidator: Add debug output that gives the reason for invalid expressions
...
llvm-svn: 163472
2012-09-08 14:00:37 +00:00
Tobias Grosser
6eaafb7288
Remove dead code
...
This code has been replaced by the SCEVValidator a while ago.
llvm-svn: 163471
2012-09-08 14:00:32 +00:00
NAKAMURA Takumi
78ddd58743
lit: Util.which(): Use os.path.isfile() instead of os.path.exists(), or it hits to the directory.
...
For example, which('loop-convert') returns 'loop-convert' when the directory 'loop-convert' exists.
llvm-svn: 163469
2012-09-08 12:07:24 +00:00
NAKAMURA Takumi
e06bc926bb
clang/test/Sema/format-strings-scanf.c: Relax a couple of expressions with expected-warning-re to let matched for Win32 targets.
...
- format specifies type 'wchar_t **' (aka 'int **') but the argument has type 'float *'
- format specifies type 'wchar_t **' (aka 'unsigned short **') but the argument has type 'float *'
llvm-svn: 163468
2012-09-08 12:06:00 +00:00
Anton Korobeynikov
e6f74094b5
Add some ARM EABI preprocessor builtins tests
...
llvm-svn: 163467
2012-09-08 08:45:10 +00:00
Tobias Grosser
0b5a1959f4
ScopGraphPrinter: Escape error message
...
Otherwise a '"' in the error message, yields an invalid .dot file.
llvm-svn: 163466
2012-09-08 08:31:55 +00:00
Anton Korobeynikov
26b1388293
Do not construct StringRef from NULL argument.
...
llvm-svn: 163465
2012-09-08 08:22:13 +00:00
Anton Korobeynikov
e98c4dbd1e
Provide some ACLE C defines. This should fix PR13796
...
llvm-svn: 163464
2012-09-08 08:08:27 +00:00
Craig Topper
0955a9f4e1
Use 256-bit alignment for constant pool value for 256-bit vector FNEG lowering.
...
llvm-svn: 163463
2012-09-08 07:46:05 +00:00
Ted Kremenek
6ed296661a
Try disabling the FileCheck part of the retain-release.m test to see if it fixes the buildbots.
...
llvm-svn: 163462
2012-09-08 07:40:15 +00:00
Craig Topper
98f2e861a0
Add support for lowering FABS of vector types.
...
llvm-svn: 163461
2012-09-08 07:31:51 +00:00
Ted Kremenek
e7ec4ef48d
Fix bug in BugReporter::RemoveUneededCalls() where "prunable"
...
PathDiagnosticEventPieces were *always* pruned. Instead, they
are suppose to only be pruned if the entire call gets pruned.
llvm-svn: 163460
2012-09-08 07:18:18 +00:00
Richard Smith
639b8d05dd
When a bad UTF-8 encoding or bogus escape sequence is encountered in a
...
string literal, produce a diagnostic pointing at the erroneous character
range, not at the start of the literal.
llvm-svn: 163459
2012-09-08 07:16:20 +00:00
Craig Topper
3e41a5bb31
Set operation action for FFLOOR to Expand for all vector types for X86. Set FFLOOR of v4f32 to Expand for ARM. v2f64 was already correct.
...
llvm-svn: 163458
2012-09-08 04:58:43 +00:00
Ted Kremenek
d94669675b
Revert "Add -exact-match option to FileCheck to allow clients to do exact matches without using regular expressions."
...
Turns out I did not need it after all. If we find a use for it in the future, we
can resurrect it.
llvm-svn: 163457
2012-09-08 04:32:13 +00:00
Ted Kremenek
b724ea5c2e
This test does not require --exact-match from FileCheck.
...
llvm-svn: 163456
2012-09-08 04:29:08 +00:00
Ted Kremenek
b0d1c70258
Attempt (again) to stabilize the order of the emission of diagnostics
...
of the analyzer by using the FullProfile() of a PathDiagnostic
for ordering them.
llvm-svn: 163455
2012-09-08 04:26:37 +00:00