Craig Topper
4a98175800
Factor some common code out of individual if blocks.
...
llvm-svn: 168538
2012-11-24 08:22:37 +00:00
Kostya Serebryany
df198db1aa
[asan/tsan] get rid of kPageSize completely in favor of GetPageSizeCached(). This makes the code friendly to more platforms
...
llvm-svn: 168537
2012-11-24 05:03:11 +00:00
Rafael Espindola
cc0c74a76c
Change the representation of MCCFIInstruction.
...
We now store the Register and Offset directly. MachineLocation is gone (from
this file)!
llvm-svn: 168536
2012-11-24 04:33:48 +00:00
Nico Weber
6c92b89a9c
Make err_module_expected_semi consistent with all the other expected_semi diags.
...
llvm-svn: 168535
2012-11-24 03:20:20 +00:00
Rafael Espindola
5dce65b21e
Give each MCCFIInstruction its own opcode.
...
This untangles the switch cases of the old Move and RelMove opcodes a bit
and makes it clear how to add new instructions.
llvm-svn: 168534
2012-11-24 03:10:54 +00:00
Rafael Espindola
7a6e441262
Move a bit of duplicated code into a helper function.
...
llvm-svn: 168533
2012-11-24 02:18:49 +00:00
Rafael Espindola
1c3086cc91
Refactor how MCCFIInstructions are created.
...
Give MCCFIInstruction a single, private constructor and add helper static
methods that create each type of cfi instruction. This is is preparation
for changing its representation. The representation with a pair
MachineLocations older than MC and has been abused quiet a bit to support
more cfi instructions.
llvm-svn: 168532
2012-11-24 02:01:08 +00:00
Daniel Malea
561e218517
Skip objC test on non-darwin platforms
...
llvm-svn: 168531
2012-11-23 22:15:09 +00:00
Daniel Malea
662f2b8be0
Remove decorator to skip event tests
...
- hang resolved in r168503
llvm-svn: 168530
2012-11-23 22:10:20 +00:00
Daniel Malea
93aec0f9a9
Update test status on Linux
...
- add decorators @expectedFailLinux and @skipOnLinux
- skip/mark xfail cases due to open bugzillas # 14323, 14416, 14423, 14424, 14425, 14426
Patch by Ashok Thirumurthi!
llvm-svn: 168529
2012-11-23 21:59:29 +00:00
Benjamin Kramer
455fa35e51
CodeGenPrepare: Move ret duplication out of the instruction iteration loop.
...
It can delete the block, and the loop continues on free'd memory.
No change in output. Found by valgrind.
llvm-svn: 168525
2012-11-23 19:17:06 +00:00
Craig Topper
bef254ab16
Refactor a bit to make some helper functions static.
...
llvm-svn: 168524
2012-11-23 18:38:31 +00:00
Daniel Malea
a35970a6f6
Fix Linux bug that leaves lldb in invalid state after expression evaluation times out.
...
- Handle EINVAL return code from ptrace(GETSIGINFO, ...): not an error, but 'group-stop' state on Linux
- propagate SIGSTOP to inferior in above case
- this commit resolves the failure in expression_command/timeout testcase
Thanks to Sean Callanan & Matt Kopec for helping debug this problem
llvm-svn: 168523
2012-11-23 18:09:58 +00:00
Rafael Espindola
b3b60570e3
Add a -disable-cfi option to llvm-mc. This is useful for debugging as
...
it will expand any .cfi_* directives in the input assembly.
Unfortunately this cannot replace elf-dump in tests as the asm streamer
cannot relax the line advance opcodes.
llvm-svn: 168522
2012-11-23 17:37:34 +00:00
Benjamin Kramer
90633e39fc
Sema: Provide a valid source location when instantiating templates based on a CXXDefaultArgExpr.
...
Fixes PR13758.
llvm-svn: 168521
2012-11-23 17:04:52 +00:00
Rafael Espindola
9bb247813a
Implement .cfi_undefined. Based on a patch from PaX team, updated by
...
Roman Divacky. I just added the testcase.
llvm-svn: 168520
2012-11-23 16:59:41 +00:00
Rafael Espindola
99e3bfbd17
Merge used flags so that we don't have to iterate on isUsed. With this change
...
"clang -cc1 -fsyntax-only" on the preprocessed output of
#define M extern int a;
#define M2 M M
#define M4 M2 M2
#define M8 M4 M4
#define M16 M8 M8
#define M32 M16 M16
#define M64 M32 M32
#define M128 M64 M64
#define M256 M128 M128
#define M512 M256 M256
#define M1024 M512 M512
#define M2048 M1024 M1024
#define M4096 M2048 M2048
#define M8192 M4096 M4096
#define M16384 M8192 M8192
M16384
goes from 2.994s to 1.416s. GCC is at 0.022s, so we still have a long way to go.
llvm-svn: 168519
2012-11-23 16:26:30 +00:00
Dmitry Vyukov
195eda9922
tsan: add failure memory order to atomic compare exchange functions
...
llvm-svn: 168518
2012-11-23 15:51:45 +00:00
Kostya Serebryany
f22c697f58
[asan] get rid of some of the uses of kPageSize. The intent is to get rid of it completely to support platforms with multiple possible page sizes.
...
llvm-svn: 168517
2012-11-23 15:38:49 +00:00
Patrik Hägglund
59189597de
Disallow the undocumented practice of starting the datalayout string with '-'.
...
Update some test cases accordingly.
llvm-svn: 168516
2012-11-23 14:51:42 +00:00
Rafael Espindola
88806c2865
Remove redundant check.
...
llvm-svn: 168515
2012-11-23 14:29:54 +00:00
Rafael Espindola
53192e7d93
Check that we don't warn on this testcase. This is basically a test that
...
Decl::isUsed checks the attribute. If the function had a body just the check
is DeclMustBeEmitted would be sufficient.
llvm-svn: 168514
2012-11-23 13:54:40 +00:00
Alexey Samsonov
1a05424ee0
[ASan] move swapcontext_test to Linux-specific tests
...
llvm-svn: 168513
2012-11-23 11:20:54 +00:00
Bill Wendling
6966727299
Update call to the new syntax.
...
llvm-svn: 168512
2012-11-23 11:05:35 +00:00
Joey Gouly
9519823271
Remove unused parameter Penalty from the BoundsChecking pass.
...
llvm-svn: 168511
2012-11-23 10:47:35 +00:00
Joey Gouly
ebc59d5eb4
PR14306: Move -fbounds-checking to -fsanitize=bounds.
...
llvm-svn: 168510
2012-11-23 10:39:49 +00:00
Alexey Samsonov
aac36b345a
[ASan] intercept swapcontext on Linux only
...
llvm-svn: 168509
2012-11-23 10:14:44 +00:00
Alexey Samsonov
0d7755ccb5
[ASan] Add interceptor for swapcontext to fight with false positives in some of its use cases.
...
llvm-svn: 168508
2012-11-23 09:46:34 +00:00
Patrik Hägglund
f77cc055cd
Cleanup: Simplify loop end logic in computeRegisterProperties().
...
llvm-svn: 168507
2012-11-23 08:35:04 +00:00
Dmitry Vyukov
db584aded7
tsan: ensure than func entry/exit are inlined
...
llvm-svn: 168506
2012-11-23 07:14:11 +00:00
Bob Wilson
decc03efe8
Reapply a subset of r167567 to clean up Darwin-specific code for invoking gcc.
...
Unlike my previous attempt at this, this patch leaves intact the check for
whether clang can handle the input file type, and for non-Darwin toolchains it
will invoke gcc for things it cannot handle. For Darwin toolchains, the
behavior reported in pr14338 still occurs with this patch, but that is a
definite improvement from what happens currently, where it just crashes with
an assertion failure.
llvm-svn: 168505
2012-11-23 06:14:39 +00:00
Venkatraman Govindaraju
fee0e0f792
Added me as the owner of the Sparc backend
...
llvm-svn: 168504
2012-11-22 22:14:48 +00:00
Daniel Malea
8b9e71e6ef
Remove call to StopMonitor() from ProcessMonitor::Detach()
...
- StopMonitor() is called anyways from ProcessMonitor destructor later
- resolves hang in TestEvents.py
Patch by Matt Kopec!
llvm-svn: 168503
2012-11-22 18:21:05 +00:00
Rafael Espindola
02ad0cb075
Mark me as the owner of the gold plugin.
...
llvm-svn: 168502
2012-11-22 16:43:44 +00:00
Meador Inge
780a1861f1
Add more functions to the target library information.
...
I discovered a few more missing functions while migrating optimizations
from the simplify-libcalls pass to the instcombine (I already added some
in r167659).
llvm-svn: 168501
2012-11-22 15:36:42 +00:00
Benjamin Kramer
ba4c85e51d
Make helpers static/anonymous.
...
llvm-svn: 168500
2012-11-22 15:02:44 +00:00
NAKAMURA Takumi
6b8b2a9b98
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp: Prune AddressSanitizerCreateGlobalRedzonesPass::ID. [-Wunused-variable]
...
llvm-svn: 168499
2012-11-22 14:18:25 +00:00
Eli Bendersky
26e7efeb1a
Fix 80-col violation
...
llvm-svn: 168498
2012-11-22 14:10:40 +00:00
Dmitry Vyukov
6971414f3e
tsan: fix more bugs in signal handling
...
llvm-svn: 168497
2012-11-22 13:53:54 +00:00
Dmitry Vyukov
3048e1a399
tsan: add missing \n in report
...
llvm-svn: 168496
2012-11-22 13:38:28 +00:00
NAKAMURA Takumi
bb9279a6af
IntelJITEventsWrapper.h: Prune two members, FinalizeThreadFunc and FinalizeProcessFunc, for now. [-Wunused-private-field]
...
llvm-svn: 168495
2012-11-22 13:18:37 +00:00
Dmitri Gribenko
6ac1de48f9
Documentation: convert SourceLevelDebugging.html to reST
...
llvm-svn: 168493
2012-11-22 11:56:02 +00:00
Chandler Carruth
315e719dff
Remove 'sretpromotion' pass from the documentation. This pass is long
...
dead.
Patch by Stephan Falke.
llvm-svn: 168492
2012-11-22 11:17:08 +00:00
Dmitry Vyukov
35437032be
tsan: better error message for OOM
...
llvm-svn: 168491
2012-11-22 08:42:01 +00:00
Ted Kremenek
68ab5ecd75
Generalize matching of add_executable to add_XXX_executable.
...
llvm-svn: 168490
2012-11-22 07:48:52 +00:00
Lang Hames
e9541c820a
llvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, rather than
...
isOperationLegal. Thanks to Craig Topper for pointing this out.
llvm-svn: 168485
2012-11-22 03:31:45 +00:00
Kostya Serebryany
20a79970e0
[asan] rip off the creation of global redzones from the main AddressSanitizer class into a separate class. The intent is to make it a separate ModulePass in the following commmits
...
llvm-svn: 168484
2012-11-22 03:18:50 +00:00
Eric Christopher
960ac37832
Pull some code out into functions to make rearranging them a bit easier.
...
llvm-svn: 168481
2012-11-22 00:59:49 +00:00
Richard Smith
b2c5f963d6
Fix regression in r168477. Use canonical decl when looking for base class
...
specified as a qualified name.
llvm-svn: 168479
2012-11-22 00:40:54 +00:00
Richard Smith
d80b2d57cf
Fix CXXRecordDecl::forallBases to not look through bases which are dependent
...
and defined within the current instantiation, but which are not part of the
current instantiation. Previously, it would look at bases which could be
specialized separately from the current template.
llvm-svn: 168477
2012-11-22 00:24:47 +00:00