Benjamin Kramer [Fri, 16 Nov 2012 17:32:33 +0000 (17:32 +0000)]
Work around a layering violation from Target to CodeGen.
Technically this is still a layering violation but it's header-only which makes
it less harmful. No functionality change.
llvm-svn: 168173
Benjamin Kramer [Fri, 16 Nov 2012 17:30:58 +0000 (17:30 +0000)]
Make libASTMatchers link its dependencies. libRewriteFrontend depends on libRewriteCore.
LLVM_USED_LIBS does nothing here.
llvm-svn: 168172
NAKAMURA Takumi [Fri, 16 Nov 2012 16:07:37 +0000 (16:07 +0000)]
llvm/test/CodeGen/X86/hipe-cc*.ll: Add explicit -mcpu, or they don't expect to pass on Atom.
llvm-svn: 168171
Alexey Samsonov [Fri, 16 Nov 2012 13:38:03 +0000 (13:38 +0000)]
ubsan: fix broken test case by using brand new [[@LINE]] FileCheck feature
llvm-svn: 168170
Alexey Samsonov [Fri, 16 Nov 2012 12:57:07 +0000 (12:57 +0000)]
UBSan: enable CMake build on Darwin. Fix two failing tests and disable the test which produces linker errors on Darwin.
llvm-svn: 168169
Alexey Samsonov [Fri, 16 Nov 2012 12:53:14 +0000 (12:53 +0000)]
UBSan: enable proper linking with UBsan runtime on Darwin. Turn on building ubsan on OS X in 'make' build system. Patch by Jean-Daniel Dupas.
llvm-svn: 168168
Alexey Samsonov [Fri, 16 Nov 2012 12:51:23 +0000 (12:51 +0000)]
UBSan: fix support on Darwin in 'make' build system. Patch by Jean-Daniel Dupas.
llvm-svn: 168167
Duncan Sands [Fri, 16 Nov 2012 12:36:39 +0000 (12:36 +0000)]
Add the Erlang/HiPE calling convention, patch by Yiannis Tsiouris.
llvm-svn: 168166
Chandler Carruth [Fri, 16 Nov 2012 11:45:08 +0000 (11:45 +0000)]
Update credits file regarding SROA work... Also include my other primary
email address for completeness.
llvm-svn: 168165
Chandler Carruth [Fri, 16 Nov 2012 11:43:01 +0000 (11:43 +0000)]
Add myself as the code owner for a bunch of stuff.
Notably, I'm reviewing this stuff already, and this makes it clear I'm
on the hook for it.
I'm relying on Eric Christopher and Michael Spencer to help with Support
when there are platform specific issues, but Chris wants a single point
of contact, and I'm happy with that.
llvm-svn: 168164
Dmitry Vyukov [Fri, 16 Nov 2012 11:26:05 +0000 (11:26 +0000)]
asan: sync with gcc r193553
llvm-svn: 168151
Alexey Samsonov [Fri, 16 Nov 2012 11:21:07 +0000 (11:21 +0000)]
[TSan] use explicit ctor for BlockingCall
llvm-svn: 168150
Amara Emerson [Fri, 16 Nov 2012 11:17:00 +0000 (11:17 +0000)]
Add MCJIT test case for running global constructors.
llvm-svn: 168149
Amara Emerson [Fri, 16 Nov 2012 11:11:59 +0000 (11:11 +0000)]
Add R_ARM_TARGET1 relocation to MCJIT and ensure that the runtime dyld reads
all symbols during object loading, not just global ones.
This fixes JIT execution of code using llvm.global_ctors with internal
linkage constructors.
llvm-svn: 168148
Hans Wennborg [Fri, 16 Nov 2012 10:33:25 +0000 (10:33 +0000)]
Constant::IsThreadDependent(): Use dyn_cast<Constant> instead of cast
It turns out that the operands of a Constant are not always themselves
Constant. For example, one of the operands of BlockAddress is
BasicBlock, which is not a Constant.
This should fix the dragonegg-x86_64-linux-gcc-4.6-test build which
broke in r168037.
llvm-svn: 168147
Alexey Samsonov [Fri, 16 Nov 2012 10:16:14 +0000 (10:16 +0000)]
[TSan] use llvm-symbolizer to run tsan tests
llvm-svn: 168146
Nick Lewycky [Fri, 16 Nov 2012 08:40:59 +0000 (08:40 +0000)]
Store this Decl* as a Decl* instead of a uintptr_t. No functionality change.
llvm-svn: 168145
Alexey Samsonov [Fri, 16 Nov 2012 08:36:25 +0000 (08:36 +0000)]
[DebugInfo] Generate address ranges for compile units even if .debug_aranges is present: it is often the case that .debug_aranges section contains ranges only for a small subset of compile units. Test cases will be added in separate commits.
llvm-svn: 168144
Craig Topper [Fri, 16 Nov 2012 07:48:23 +0000 (07:48 +0000)]
Factor some common code to reduce compile size.
llvm-svn: 168143
Nadav Rotem [Fri, 16 Nov 2012 06:51:17 +0000 (06:51 +0000)]
LoopVectorize: Division reductions generate incorrect code. Remove the part of the code that deals with divs.
Thanks to Paul Redmond for catching this while reviewing the code.
llvm-svn: 168142
Craig Topper [Fri, 16 Nov 2012 06:37:56 +0000 (06:37 +0000)]
Use roundps/pd for llvm.ceil, llvm.trunc, llvm.rint, and llvm.nearbyint of vector types.
llvm-svn: 168141
Jason Molenda [Fri, 16 Nov 2012 06:15:40 +0000 (06:15 +0000)]
Change RegisterContextLLDB's unwind logging to report which stack frame
finally was able to restore a register, instead of just reporting the
frames that couldn't supply the reg.
llvm-svn: 168139
Craig Topper [Fri, 16 Nov 2012 06:10:48 +0000 (06:10 +0000)]
Fix typo in a comment.
llvm-svn: 168138
NAKAMURA Takumi [Fri, 16 Nov 2012 04:40:11 +0000 (04:40 +0000)]
clang/unittests: Fixup corresponding to Doug's r168136.
llvm-svn: 168137
Douglas Gregor [Fri, 16 Nov 2012 04:24:59 +0000 (04:24 +0000)]
Since CreateTargetInfo is taking ownership of the target options, pass
it as a pointer.
llvm-svn: 168136
Douglas Gregor [Fri, 16 Nov 2012 04:10:20 +0000 (04:10 +0000)]
Remove unused diagnostics
llvm-svn: 168135
NAKAMURA Takumi [Fri, 16 Nov 2012 03:50:55 +0000 (03:50 +0000)]
Revert r168132, "clang/test/lit.cfg: Suppress the feature 'dev-fd-fs' for now." I missed Daniel's r168095 by my accident.
llvm-svn: 168134
Argyrios Kyrtzidis [Fri, 16 Nov 2012 03:34:57 +0000 (03:34 +0000)]
[libclang] When caching code-completion results, pass the CachedCompletionAllocator
to the CodeCompletionTUInfo that is going to be used to get the results.
Previously we would use ASTUnit's CodeCompletionTUInfo which has its own allocator
that will go away when we reparse. That could result in a use-after-free bug when
getting the parent context name from a CodeCompletionString.
Addresses rdar://
12568377.
llvm-svn: 168133
NAKAMURA Takumi [Fri, 16 Nov 2012 03:28:51 +0000 (03:28 +0000)]
clang/test/lit.cfg: Suppress the feature 'dev-fd-fs' for now.
None of my buildhost (centos6 x86-64 and cygwin) is passing. Investigating.
llvm-svn: 168132
Akira Hatanaka [Fri, 16 Nov 2012 02:39:34 +0000 (02:39 +0000)]
[mips] Fix delay slot filler so that instructions with register operand $1 are
allowed in branch delay slot.
llvm-svn: 168131
Daniel Dunbar [Fri, 16 Nov 2012 01:51:11 +0000 (01:51 +0000)]
CPP Output: Do not emit an enter file marker for the main file.
- This diverges from gcc, and confuses tools (like dtrace) which track # line
markers as a way to determine which content is in the context of the main
file.
llvm-svn: 168128
Richard Trieu [Fri, 16 Nov 2012 01:32:40 +0000 (01:32 +0000)]
Take into account the zero sign bit for positive numbers when computing the bit
width of an enum with negative values in IntRange. Include a test for
-Wtautological-constant-out-of-range-compare where this had manifested.
llvm-svn: 168126
Matt Beaumont-Gay [Fri, 16 Nov 2012 01:14:52 +0000 (01:14 +0000)]
Fix PR14321, a crash when Clang is built with GCC 4.7 at -O1 or greater.
GCC 4.7 reuses stack slots fairly aggressively, which exposes more temporary
lifetime bugs.
No new test, this was caught by the existing CodeGenCXX/mangle-ms-templates.cpp.
llvm-svn: 168124
Jason Molenda [Fri, 16 Nov 2012 01:03:31 +0000 (01:03 +0000)]
A change in how we search for saved register values unintentionally
allowed volatile registers to be returned up the stack. That leads
to unexpected/incorrect values provided to the user and we need to
avoid that.
<rdar://problem/
12714247>
llvm-svn: 168123
Michael Ilseman [Fri, 16 Nov 2012 00:58:59 +0000 (00:58 +0000)]
Remove trailing whitespace
llvm-svn: 168121
Richard Smith [Fri, 16 Nov 2012 00:53:38 +0000 (00:53 +0000)]
A step towards sorting out handling of triviality of special members in C++11.
Separate out the notions of 'has a trivial special member' and 'has a
non-trivial special member', and use them appropriately. These are not
opposites of one another (there might be no special member, or in C++11 there
might be a trivial one and a non-trivial one). The CXXRecordDecl predicates
continue to produce incorrect results, but do so in fewer cases now, and
they document the cases where they might be wrong.
No functionality changes are intended here (they will come when the predicates
start producing the right answers...).
llvm-svn: 168119
Argyrios Kyrtzidis [Fri, 16 Nov 2012 00:25:28 +0000 (00:25 +0000)]
Mention the lldb formatters in the clang wiki under debugging.
llvm-svn: 168118
Argyrios Kyrtzidis [Fri, 16 Nov 2012 00:25:26 +0000 (00:25 +0000)]
[ClangDataFormat.py] Add summary for QualType.
llvm-svn: 168117
Andrew Kaylor [Thu, 15 Nov 2012 23:50:01 +0000 (23:50 +0000)]
Interface changes to allow RuntimeDyld memory managers to set memory permissions after an object has been loaded.
llvm-svn: 168114
Eli Bendersky [Thu, 15 Nov 2012 23:42:51 +0000 (23:42 +0000)]
Add some tests for the FileCheck utility.
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20121112/156007.html
llvm-svn: 168113
Eli Friedman [Thu, 15 Nov 2012 23:40:48 +0000 (23:40 +0000)]
Make sure CodeGenTypes correctly reconverts function types. Fixes PR14355, a crash in IR generation.
llvm-svn: 168112
Galina Kistanova [Thu, 15 Nov 2012 23:16:47 +0000 (23:16 +0000)]
Added myself as owner of LLVM Buildbot.
llvm-svn: 168111
Eric Christopher [Thu, 15 Nov 2012 22:57:22 +0000 (22:57 +0000)]
Clarify.
llvm-svn: 168110
Owen Anderson [Thu, 15 Nov 2012 22:56:42 +0000 (22:56 +0000)]
Claim ownership of everyone's favorite part of the backend.
llvm-svn: 168109
Richard Smith [Thu, 15 Nov 2012 22:54:20 +0000 (22:54 +0000)]
PR9903: Recover from a member functon declared with the 'typedef' specifier by
dropping the specifier, just like we do for non-member functions and function
templates declared 'typedef'. Patch by Brian Brooks!
llvm-svn: 168108
Eli Friedman [Thu, 15 Nov 2012 22:44:27 +0000 (22:44 +0000)]
Mark FP_ROUND for converting NEON v2f64 to v2f32 as expand. Add a missing
case to vector legalization so this actually works.
Patch by Pete Couperus. Fixes PR12540.
llvm-svn: 168107
Jim Ingham [Thu, 15 Nov 2012 22:44:04 +0000 (22:44 +0000)]
Don't lock the thread list during ThreadList::ShouldStop. That does too
much work for this to make sense. Just copy the current thread list and
operate on that. Prevents some deadlocks.
llvm-svn: 168106
Anna Zaks [Thu, 15 Nov 2012 22:42:44 +0000 (22:42 +0000)]
[analyzer] CmpRuns: move the clang_version info into the run (out of
report)
llvm-svn: 168105
Eric Christopher [Thu, 15 Nov 2012 22:41:56 +0000 (22:41 +0000)]
More ownership, no one likes these things anyways.
llvm-svn: 168104
Michael Ilseman [Thu, 15 Nov 2012 22:34:00 +0000 (22:34 +0000)]
Remove trailing whitespace
llvm-svn: 168103
Nadav Rotem [Thu, 15 Nov 2012 22:26:51 +0000 (22:26 +0000)]
Update the code ownership.
llvm-svn: 168102
Dmitri Gribenko [Thu, 15 Nov 2012 22:21:42 +0000 (22:21 +0000)]
Comment to XML conversion test: correct filename.
llvm-svn: 168101
Jordan Rose [Thu, 15 Nov 2012 22:03:53 +0000 (22:03 +0000)]
[analyzer] SATestBuild.py: correctly add -j option for projects using make.
llvm-svn: 168099
Dmitri Gribenko [Thu, 15 Nov 2012 22:03:13 +0000 (22:03 +0000)]
Split annotate-comments.cpp into a fragile (that uses hardcoded line numbers)
and a non-fragile (that uses [[@LINE]]) parts.
llvm-svn: 168098
Daniel Dunbar [Thu, 15 Nov 2012 21:31:13 +0000 (21:31 +0000)]
tests: Mark the /dev/fd test as requiring Darwin until I can test on other OSes.
llvm-svn: 168095
Jyotsna Verma [Thu, 15 Nov 2012 21:21:01 +0000 (21:21 +0000)]
Fix typo.
llvm-svn: 168091
Sebastian Pop [Thu, 15 Nov 2012 21:20:22 +0000 (21:20 +0000)]
autoconf: isl depends on gmp include files
When libgmp header files are not installed in the default /usr/include location,
configure used to fail to find the gmp headers when testing for isl/ast.h. This
patch adds the gmp include path to the compiler flags before testing for ISL.
llvm-svn: 168090
Akira Hatanaka [Thu, 15 Nov 2012 21:17:13 +0000 (21:17 +0000)]
[mips] Add predicate HasFPIdx for floating-point indexed load instruction
support and use it in place of HasMips32r2Or64.
llvm-svn: 168089
Joel Jones [Thu, 15 Nov 2012 21:15:08 +0000 (21:15 +0000)]
Add description of how to build docs
llvm-svn: 168088
Argyrios Kyrtzidis [Thu, 15 Nov 2012 20:59:00 +0000 (20:59 +0000)]
[utils/ClangDataFormat.py] For invalid source locations just return
"<invalid loc>" for summary.
llvm-svn: 168087
Adhemerval Zanella [Thu, 15 Nov 2012 20:56:03 +0000 (20:56 +0000)]
PowerPC: Lowering floor intrinsic for Altivec
This patch lowers the llvm.floor, llvm.ceil, llvm.trunc, and
llvm.nearbyint to Altivec instruction when using 4 single-precision
float vectors.
llvm-svn: 168086
Daniel Dunbar [Thu, 15 Nov 2012 20:24:58 +0000 (20:24 +0000)]
tests: Check that we can output to /dev/fd filesystem.
- An LLVM unique_file() bug could cause us to infinite loop on the later test
case.
llvm-svn: 168082
Daniel Dunbar [Thu, 15 Nov 2012 20:24:52 +0000 (20:24 +0000)]
PathV2: Fix a possible infinite loop.
- The code could infinite loop trying to create unique files, if the directory
containing the unique file exists, but open() calls on non-existent files in
the path return ENOENT. This is true on the /dev/fd filesystem, for example.
- Will add a clang side test case for this.
llvm-svn: 168081
Jordan Rose [Thu, 15 Nov 2012 20:10:05 +0000 (20:10 +0000)]
[analyzer] Fix a use-after-free introduced in r168019.
In code like this:
void foo() {
bar();
baz();
}
...the location for the call to 'bar()' was being used as a backup location
for the call to 'baz()'. This is fine unless the call to 'bar()' is deemed
uninteresting and that part of the path deleted.
(This looks like a logic error as well, but in practice the only way 'baz()'
could have an invalid location is if the entire body of 'foo()' is
synthesized, meaning the call to 'bar()' will be using the location of the
call to 'foo()' anyway. Nevertheless, the new version better matches the
intent of the code.)
Found by Matt Beaumont-Gay using ASan. Thanks, Matt!
llvm-svn: 168080
Daniel Dunbar [Thu, 15 Nov 2012 20:06:10 +0000 (20:06 +0000)]
tests: Add a test for reading from named pipes.
- Realized I could use the /dev/fd filesystem to make a simple portable test.
llvm-svn: 168079
Akira Hatanaka [Thu, 15 Nov 2012 20:05:11 +0000 (20:05 +0000)]
Add assertions in MipsLongBranch which check the size of basic blocks.
llvm-svn: 168078
Douglas Gregor [Thu, 15 Nov 2012 19:47:16 +0000 (19:47 +0000)]
If an excluded header does not exist, just ignore it
llvm-svn: 168077
Jakub Staszak [Thu, 15 Nov 2012 19:40:29 +0000 (19:40 +0000)]
Return 0 instead of false.
llvm-svn: 168076
Greg Clayton [Thu, 15 Nov 2012 19:37:18 +0000 (19:37 +0000)]
<rdar://problem/
12125010>
Handle universal BSD archives correctly when parsing DWARF in .o files with debug map.
llvm-svn: 168075
Ulrich Weigand [Thu, 15 Nov 2012 19:33:30 +0000 (19:33 +0000)]
Use std::stable_sort instead of std::sort when sorting stack slots
to guarantee deterministic code generation.
llvm-svn: 168074
Evan Cheng [Thu, 15 Nov 2012 19:31:48 +0000 (19:31 +0000)]
Clarify my code ownership
llvm-svn: 168073
Sergei Larin [Thu, 15 Nov 2012 19:24:19 +0000 (19:24 +0000)]
Add myself as owner of VLIW Instruction Scheduling and Packetization.
llvm-svn: 168072
Jim Ingham [Thu, 15 Nov 2012 19:13:33 +0000 (19:13 +0000)]
Explain how to use "expr -u" as the lldb equivalent of "set unwind-on-signal 0; print".
llvm-svn: 168071
Jordan Rose [Thu, 15 Nov 2012 19:11:43 +0000 (19:11 +0000)]
[analyzer] Report leaks at the closing brace of a function body.
This fixes a few cases where we'd emit path notes like this:
+---+
1| v
p = malloc(len);
^ |2
+---+
In general this should make path notes more consistent and more correct,
especially in cases where the leak happens on the false branch of an if
that jumps directly to the end of the function. There are a couple places
where the leak is reported farther away from the cause; these are usually
cases where there are several levels of nested braces before the end of
the function. This still matches our current behavior for when there /is/
a statement after all the braces, though.
llvm-svn: 168070
Jordan Rose [Thu, 15 Nov 2012 19:11:38 +0000 (19:11 +0000)]
[analyzer] StreamChecker: Remove now-unnecessary check::EndPath callback.
Also, don't bother to stop tracking symbols in the return value, either.
They are now properly considered live during checkDeadSymbols.
llvm-svn: 168069
Jordan Rose [Thu, 15 Nov 2012 19:11:35 +0000 (19:11 +0000)]
[analyzer] MacOSKeychainAPIChecker: Remove now-unnecessary check::EndPath.
Also, don't bother to stop tracking symbols in the return value, either.
They are now properly considered live during checkDeadSymbols.
llvm-svn: 168068
Jordan Rose [Thu, 15 Nov 2012 19:11:33 +0000 (19:11 +0000)]
[analyzer] MallocChecker: Remove now-unnecessary check::EndPath callback.
Also, don't bother to stop tracking symbols in the return value, either.
They are now properly considered live during checkDeadSymbols.
llvm-svn: 168067
Jordan Rose [Thu, 15 Nov 2012 19:11:27 +0000 (19:11 +0000)]
[analyzer] Mark symbol values as dead in the environment.
This allows us to properly remove dead bindings at the end of the top-level
stack frame, using the ReturnStmt, if there is one, to keep the return value
live. This in turn removes the need for a check::EndPath callback in leak
checkers.
This does cause some changes in the path notes for leak checkers. Previously,
a leak would be reported at the location of the closing brace in a function.
Now, it gets reported at the last statement. This matches the way leaks are
currently reported for inlined functions, but is less than ideal for both.
llvm-svn: 168066
Anton Korobeynikov [Thu, 15 Nov 2012 19:10:23 +0000 (19:10 +0000)]
Add ARM EABI to my list of responsibilities.
Update the email address (old works too, but less reliable) while there
llvm-svn: 168065
Jakub Staszak [Thu, 15 Nov 2012 19:05:23 +0000 (19:05 +0000)]
Simplify code.
llvm-svn: 168064
Fariborz Jahanian [Thu, 15 Nov 2012 19:02:45 +0000 (19:02 +0000)]
block extended signatur option. Change previous option
to a cc1 -fencode-extended-block-signature and pass it
to cc1 and recognize this option to produce extended block
type signature. // rdar://
12109031
llvm-svn: 168063
Argyrios Kyrtzidis [Thu, 15 Nov 2012 18:57:27 +0000 (18:57 +0000)]
[modules] Use a memory buffer directly as input for the module includes,
instead of messing with virtual files.
llvm-svn: 168062
Argyrios Kyrtzidis [Thu, 15 Nov 2012 18:57:22 +0000 (18:57 +0000)]
[modules] Setup the import location of a module file and use it
as the include location of the main file of an imported module.
llvm-svn: 168061
Dmitry Vyukov [Thu, 15 Nov 2012 18:49:08 +0000 (18:49 +0000)]
tsan: remove unused parameter
llvm-svn: 168060
Dmitry Vyukov [Thu, 15 Nov 2012 18:44:22 +0000 (18:44 +0000)]
tsan: switch to 4 shadow cells by default (since that's what we use everywhere now)
llvm-svn: 168059
Andrew Trick [Thu, 15 Nov 2012 18:40:31 +0000 (18:40 +0000)]
misspell
llvm-svn: 168058
Andrew Trick [Thu, 15 Nov 2012 18:40:29 +0000 (18:40 +0000)]
whitespace
llvm-svn: 168057
Dmitri Gribenko [Thu, 15 Nov 2012 18:37:27 +0000 (18:37 +0000)]
Comment to XML conversion: convert some tests to use the new [[@LINE]]
FileCheck feature. This will hopefully make tests less fragile.
llvm-svn: 168056
Dmitri Gribenko [Thu, 15 Nov 2012 18:32:56 +0000 (18:32 +0000)]
Remove unused diagnostics from TableGen files.
llvm-svn: 168055
Chad Rosier [Thu, 15 Nov 2012 18:13:20 +0000 (18:13 +0000)]
[reg scavenger] Fix the isUsed/isAliasUsed functions so as to not report a false
positive.
In this particular case, R6 was being spilled by the register scavenger when it
was in fact dead. The isUsed function reported R6 as used because the R6_R7
alias was reserved (due to the fact that we've reserved R7 as the FP). The
solution is to only check if the original register (i.e., R6) isReserved and
not the aliases. The aliases are only checked to make sure they're available.
The test case is derived from one of the nightly tester benchmarks and is rather
intractable and difficult to reproduce, so I haven't included it.
rdar://
12592448
llvm-svn: 168054
Greg Clayton [Thu, 15 Nov 2012 18:05:43 +0000 (18:05 +0000)]
<rdar://problem/
11782181>
Fixed an issue where lldb was setting breakpoints on too many methods when a partial function name with namespaces or class qualifiers was used. For example setting a breakpoint of "Foo::dealloc" was accidentally settings breakpoints on all objective C functions whose selector was "dealloc"...
llvm-svn: 168053
Howard Hinnant [Thu, 15 Nov 2012 18:00:42 +0000 (18:00 +0000)]
Remove aborts under __dynamic_cast which were under _LIBCXX_DYNAMIC_FALLBACK. Change all type_info comparisons to use an inlined is_equal helper. However no change in functionality for this latter change at this time. This is just to encapsulate the comparison and make it a little easier to switch back and forth for testing/debugging.
llvm-svn: 168052
Sergei Larin [Thu, 15 Nov 2012 17:45:50 +0000 (17:45 +0000)]
Fix indeterminism in MI scheduler DAG construction.
Similarly to several recent fixes throughout the code replace std::map use with the MapVector.
Add find() method to the MapVector.
llvm-svn: 168051
Dmitry Vyukov [Thu, 15 Nov 2012 17:40:49 +0000 (17:40 +0000)]
tsan: eevn better handling of signals
add interceptor for poll()
in addition process signals in every atomic op
in addition process signals in blocking libc functions
llvm-svn: 168050
Dmitri Gribenko [Thu, 15 Nov 2012 16:51:49 +0000 (16:51 +0000)]
Use empty parens for empty function parameter list instead of '(void)'.
llvm-svn: 168049
Dmitri Gribenko [Thu, 15 Nov 2012 16:50:59 +0000 (16:50 +0000)]
FileCheck: remove useless 'continue' at the end of a 'while(){}' loop.
llvm-svn: 168048
Benjamin Kramer [Thu, 15 Nov 2012 16:40:35 +0000 (16:40 +0000)]
Simplify code. No functionality change.
llvm-svn: 168047
Alexander Potapenko [Thu, 15 Nov 2012 15:24:42 +0000 (15:24 +0000)]
[ASan] Revert r168040 and r168043 and take a cleaner solution suggested by Kostya: return the known frame name for fake stack instead of looking it up.
llvm-svn: 168046
Benjamin Kramer [Thu, 15 Nov 2012 15:18:42 +0000 (15:18 +0000)]
Do not cache a pointer to ExprEvalContexts.back().
It may become a dangling pointer if the underlying SmallVector reallocates.
Sadly the testcase is really large and doesn't reduce well because of
SmallVector's reallocation patterns.
Fixes PR14336.
llvm-svn: 168045
Alexander Potapenko [Thu, 15 Nov 2012 14:59:19 +0000 (14:59 +0000)]
[ASan] Minor fix: return to the last byte of the fake stack if we've raced by.
llvm-svn: 168043