Evgeniy Stepanov [Tue, 18 Feb 2014 11:14:30 +0000 (11:14 +0000)]
[asan] Override default sigaltstack setting on Android.
Android libc always sets altstack on non-main threads, but it is too small for
our unwinder. With use_sigaltstack=1, override this setting with a larger one.
llvm-svn: 201557
Alexey Samsonov [Tue, 18 Feb 2014 09:33:45 +0000 (09:33 +0000)]
[CMake] Add top-level target for each compiler-rt library, and add 'compiler-rt' target encompassing them all.
llvm-svn: 201556
Justin Bogner [Tue, 18 Feb 2014 09:19:48 +0000 (09:19 +0000)]
llvm-cov: Support gcov's extermely lenient treatment of -o
In gcov, the -o flag can accept either a directory or a file name.
When given a directory, the gcda and gcno files are expected to be in
that directory. When given a file, the gcda and gcno files are
expected to be named based on the stem of that file. Non-existent
paths are treated as files.
This implements compatible behaviour.
llvm-svn: 201555
Kostya Serebryany [Tue, 18 Feb 2014 09:08:03 +0000 (09:08 +0000)]
[tsan] one more lit test for deadlock detector; more to come
llvm-svn: 201554
Alexey Samsonov [Tue, 18 Feb 2014 08:56:49 +0000 (08:56 +0000)]
Simplify lit test configs for LSan and UBSan by using a generic config
llvm-svn: 201553
Alexey Samsonov [Tue, 18 Feb 2014 08:24:28 +0000 (08:24 +0000)]
Drop test/asan/GenericConfig directory
llvm-svn: 201552
Craig Topper [Tue, 18 Feb 2014 08:24:22 +0000 (08:24 +0000)]
Add PS prefix to some classes I missed in r201538.
llvm-svn: 201551
Craig Topper [Tue, 18 Feb 2014 08:18:29 +0000 (08:18 +0000)]
Add a bunch of OpSize32 tags to 64-bit mode only instructions to match their 32-bit mode counterparts for cases where there is also a OpSize16 instruction.
llvm-svn: 201550
Alexey Samsonov [Tue, 18 Feb 2014 08:07:09 +0000 (08:07 +0000)]
[CMake] Check for -fPIE and -ffreestanding flags for consistency
llvm-svn: 201549
Evgeniy Stepanov [Tue, 18 Feb 2014 08:03:44 +0000 (08:03 +0000)]
[asan] Replace rand_r with rand in test.
llvm-svn: 201548
Alexey Samsonov [Tue, 18 Feb 2014 07:52:40 +0000 (07:52 +0000)]
[CMake] Simplify setting compile flag disabling RTTI
llvm-svn: 201547
Elena Demikhovsky [Tue, 18 Feb 2014 07:52:26 +0000 (07:52 +0000)]
AVX-512: Fixed size of mask registers
llvm-svn: 201546
Evgeniy Stepanov [Tue, 18 Feb 2014 07:34:52 +0000 (07:34 +0000)]
[asan] Make __cxa_demangle non-weak symbol on Android.
This fixes global-demangle.cc test on Android.
https://code.google.com/p/address-sanitizer/issues/detail?id=264
llvm-svn: 201545
Alexey Samsonov [Tue, 18 Feb 2014 07:30:37 +0000 (07:30 +0000)]
Remove debug print
llvm-svn: 201544
Alexey Samsonov [Tue, 18 Feb 2014 07:26:58 +0000 (07:26 +0000)]
[CMake] Simplify code for detecting/setting compiler flags
llvm-svn: 201543
Richard Smith [Tue, 18 Feb 2014 03:51:47 +0000 (03:51 +0000)]
PR18876: The special-case rule that ignores the destruction of a top-level
temporary in a decltype expression only applies if that temporary was created
by a function call, not by a function-style cast or other flavour of
expression.
llvm-svn: 201542
Jiangning Liu [Tue, 18 Feb 2014 02:37:42 +0000 (02:37 +0000)]
Fix a typo about lowering AArch64 va_copy.
llvm-svn: 201541
Richard Smith [Tue, 18 Feb 2014 00:45:50 +0000 (00:45 +0000)]
Fix a non-error diagnostic that had an err_ name. Also move it from Warning to
ExtWarn, since it's an extension.
llvm-svn: 201540
Sean Callanan [Tue, 18 Feb 2014 00:31:38 +0000 (00:31 +0000)]
Properly report when a struct is anonymous.
<rdar://problem/
16071066>
llvm-svn: 201539
Craig Topper [Tue, 18 Feb 2014 00:21:49 +0000 (00:21 +0000)]
Add an x86 prefix encoding for instructions that would decode to a different instruction with 0xf2/f3/66 were in front of them, but don't themselves have a prefix. For now this doesn't change any bbehavior, but plan to use it to fix some bugs in the disassembler.
llvm-svn: 201538
Richard Smith [Mon, 17 Feb 2014 23:34:47 +0000 (23:34 +0000)]
PR18839: 'extern "C++"' also adds an implicit 'extern', not just 'extern "C"'.
llvm-svn: 201537
Richard Smith [Mon, 17 Feb 2014 23:25:27 +0000 (23:25 +0000)]
PR18870: Parse language linkage specifiers properly if the string-literal is
spelled in an interesting way.
llvm-svn: 201536
Duncan P. N. Exon Smith [Mon, 17 Feb 2014 23:22:49 +0000 (23:22 +0000)]
PGO: llvm-profdata: tool for merging profiles
Introducing llvm-profdata, a tool for merging profile data generated by
PGO instrumentation in clang.
- The name indicates a file extension of <name>.profdata. Eventually
profile data output by clang should be changed to that extension.
- llvm-profdata merges two profiles. However, the name is more general,
since it will likely pick up more tasks (such as summarizing a single
profile).
- llvm-profdata parses the current text-based format, but will be
updated once we settle on a binary format.
<rdar://problem/
15949645>
llvm-svn: 201535
Marshall Clow [Mon, 17 Feb 2014 22:18:51 +0000 (22:18 +0000)]
Implement LWG Issue 2346: integral_constant's member functions should be marked noexcept
llvm-svn: 201534
Anders Carlsson [Mon, 17 Feb 2014 21:56:01 +0000 (21:56 +0000)]
Demangle Dc to decltype(auto) as per the Itanium C++ ABI spec.
llvm-svn: 201533
Richard Smith [Mon, 17 Feb 2014 21:52:30 +0000 (21:52 +0000)]
PR18855: Add support for UCNs and UTF-8 encoding within ud-suffixes.
llvm-svn: 201532
Kevin Enderby [Mon, 17 Feb 2014 21:45:27 +0000 (21:45 +0000)]
Fix the arm assembler so that this malformed instruction:
ldrd r6, r7 [r2, #15]
simply gives an error and does not triggers an assertion.
As Jim points out, the diagnostic is really strange here,
but fixing that would be more complicated. The missing
comma results in the parser expecting a construct like r2[2],
which is the vector index thing the error message is talking
about. That's not what the user intended, though, and there's
nothing else in the instruction that looks at all like a vector.
Yet more fallout from not having a real parser here and trying
to do context-free generic matching for addressing modes.
rdar://
15097243
llvm-svn: 201531
Anders Waldenborg [Mon, 17 Feb 2014 20:48:32 +0000 (20:48 +0000)]
Add support for assigning to . in AsmParser.
This is implemented by handling assignments to the '.' pseudo symbol
as ".org" directives.
Differential Revision: http://llvm-reviews.chandlerc.com/D2625
llvm-svn: 201530
Bob Wilson [Mon, 17 Feb 2014 19:21:09 +0000 (19:21 +0000)]
Change PGO instrumentation to compute counts in a separate AST traversal.
Previously, we made one traversal of the AST prior to codegen to assign
counters to the ASTs and then propagated the count values during codegen. This
patch now adds a separate AST traversal prior to codegen for the
-fprofile-instr-use option to propagate the count values. The counts are then
saved in a map from which they can be retrieved during codegen.
This new approach has several advantages:
1. It gets rid of a lot of extra PGO-related code that had previously been
added to codegen.
2. It fixes a serious bug. My original implementation (which was mailed to the
list but never committed) used 3 counters for every loop. Justin improved it to
move 2 of those counters into the less-frequently executed breaks and continues,
but that turned out to produce wrong count values in some cases. The solution
requires visiting a loop body before the condition so that the count for the
condition properly includes the break and continue counts. Changing codegen to
visit a loop body first would be a fairly invasive change, but with a separate
AST traversal, it is easy to control the order of traversal. I've added a
testcase (provided by Justin) to make sure this works correctly.
3. It improves the instrumentation overhead, reducing the number of counters for
a loop from 3 to 1. We no longer need dedicated counters for breaks and
continues, since we can just use the propagated count values when visiting
breaks and continues.
To make this work, I needed to make a change to the way we count case
statements, going back to my original approach of not including the fall-through
in the counter values. This was necessary because there isn't always an AST node
that can be used to record the fall-through count. Now case statements are
handled the same as default statements, with the fall-through paths branching
over the counter increments. While I was at it, I also went back to using this
approach for do-loops -- omitting the fall-through count into the loop body
simplifies some of the calculations and make them behave the same as other
loops. Whenever we start using this instrumentation for coverage, we'll need
to add the fall-through counts into the counter values.
llvm-svn: 201528
Bob Wilson [Mon, 17 Feb 2014 19:21:03 +0000 (19:21 +0000)]
Some nitpicky comment fixes for "i.e." and "e.g." abbreviations.
llvm-svn: 201527
Bob Wilson [Mon, 17 Feb 2014 19:20:59 +0000 (19:20 +0000)]
Fix some minor whitespace issues.
llvm-svn: 201526
Anton Yartsev [Mon, 17 Feb 2014 18:25:34 +0000 (18:25 +0000)]
[analyzer] Improved checker naming in CFG dump.
This implements FIXME from Checker.cpp (FIXME: We want to return the package + name of the checker here.) and replaces hardcoded checker names with the new ones obtained via getCheckName().getName().
llvm-svn: 201525
Aaron Ballman [Mon, 17 Feb 2014 18:23:02 +0000 (18:23 +0000)]
Forcing it to be an error when there is no Documentation list specified for an attribute. This is a bit of a (harmless) hack, but the FIXME explains why and when this hack can be removed. It's a justified hack because this prevents attribute authors from forgetting to add documentation when they add a new attribute.
llvm-svn: 201524
Deepak Panickal [Mon, 17 Feb 2014 17:52:22 +0000 (17:52 +0000)]
Replaced custom variable arguments to standard library for correcting 64 bit Windows build
llvm-svn: 201523
Deepak Panickal [Mon, 17 Feb 2014 17:43:39 +0000 (17:43 +0000)]
Fix Windows build, broken by the inclusion of sys/ioctl.h and isatty()
llvm-svn: 201522
Deepak Panickal [Mon, 17 Feb 2014 17:42:25 +0000 (17:42 +0000)]
Fix the LLDB prompt for older Editline versions, specifically running on Ubuntu 12.04
llvm-svn: 201521
Adrian Prantl [Mon, 17 Feb 2014 17:40:52 +0000 (17:40 +0000)]
Revert "Debug info: Make DWARF4 the default for Darwin, too."
I'm holding this change to give maintainers of Darwin buildbots more time
to update their toolchains.
This reverts commit r201375.
llvm-svn: 201520
Deepak Panickal [Mon, 17 Feb 2014 17:39:27 +0000 (17:39 +0000)]
Remove nativecodegen as it forces the native target libraries to be linked in regardless of whether the target was specified in LLVM_TARGETS_TO_BUILD
llvm-svn: 201519
Aaron Ballman [Mon, 17 Feb 2014 16:18:32 +0000 (16:18 +0000)]
The default assignment operator could not be generated by all of the bots, but it's required by std::vector to operate properly.
llvm-svn: 201518
Aaron Ballman [Mon, 17 Feb 2014 15:59:37 +0000 (15:59 +0000)]
Removing a C++11'ism to also fix the build bots.
llvm-svn: 201517
Aaron Ballman [Mon, 17 Feb 2014 15:36:08 +0000 (15:36 +0000)]
Fixing build bot breakage due to using a local type as a template argument.
llvm-svn: 201516
Aaron Ballman [Mon, 17 Feb 2014 15:27:10 +0000 (15:27 +0000)]
Implements a declarative approach to documenting individual attributes in Clang via a Documentation tablegen class. Also updates the internals manual with information about how to use this new, required, documentation feature.
This patch adds some very, very sparse initial documentation for some attributes. Additional effort from attribute authors is greatly appreciated.
llvm-svn: 201515
Kostya Serebryany [Mon, 17 Feb 2014 14:57:49 +0000 (14:57 +0000)]
[sanitizer] add tests for DeadlockDetector, minor fix in onLock
llvm-svn: 201514
Alexey Samsonov [Mon, 17 Feb 2014 13:08:10 +0000 (13:08 +0000)]
Simplify defining Clang compile flags in lit configs
llvm-svn: 201513
Patrik Hagglund [Mon, 17 Feb 2014 11:54:08 +0000 (11:54 +0000)]
Fix gcc warning about C++ style comments.
llvm-svn: 201512
Evgeniy Stepanov [Mon, 17 Feb 2014 11:52:29 +0000 (11:52 +0000)]
[asan] Add a test for stack unwinding in new and delete.
llvm-svn: 201511
Evgeniy Stepanov [Mon, 17 Feb 2014 11:41:22 +0000 (11:41 +0000)]
Update license.txt to point to the new code in third_party/android.
Also remove a reference to mach_override code that is long gone.
llvm-svn: 201510
Kostya Serebryany [Mon, 17 Feb 2014 11:21:52 +0000 (11:21 +0000)]
[sanitizer] implement node removal in Deadlock graph
llvm-svn: 201509
Tim Northover [Mon, 17 Feb 2014 11:12:04 +0000 (11:12 +0000)]
Darwin: remove buggy assertion
We later emit a proper error in the situations where this would trigger, so
there's no need to check.
rdar://problem/
16040604
llvm-svn: 201508
Craig Topper [Mon, 17 Feb 2014 10:03:43 +0000 (10:03 +0000)]
Fix diassembler handling of rex.b when mod=00/01/10 and bbb=101. Mod=00 should ignore the base register entirely. Mod=01/10 should treat this as R13 plus displacment. Fixes PR18860.
llvm-svn: 201507
Alexey Samsonov [Mon, 17 Feb 2014 09:14:01 +0000 (09:14 +0000)]
[compiler-rt] Fix CompilerTargetTriple for non-English locales.
When the locale of a shell is set other than English locales or the C locale,
The word 'Target' may be translated. Thus, with e.g. ja_JP locale, compiler-rt
couldn't be built properly. Forcing LANG=C fixes the problem.
Patch by Ogino Masanori.
llvm-svn: 201506
Kostya Serebryany [Mon, 17 Feb 2014 08:47:48 +0000 (08:47 +0000)]
[sanitizer] simplify DeadlockDetectorTLS
llvm-svn: 201505
Daniel Jasper [Mon, 17 Feb 2014 07:57:46 +0000 (07:57 +0000)]
clang-format: Don't wrap "const" etc. of function declarations.
Generally people seem to prefer wrapping the first function parameter
over wrapping the trailing tokens "const", "override" and "final". This
does not extend to function-like annotations and probably not to other
non-standard annotations.
Before:
void someLongFunction(int SomeLongParameter)
const { ... }
After:
void someLongFunction(
int SomeLongParameter) const { ... }
llvm-svn: 201504
Kostya Serebryany [Mon, 17 Feb 2014 07:39:44 +0000 (07:39 +0000)]
[sanitizer] add one more test for deadlock detection stuff
llvm-svn: 201503
Elena Demikhovsky [Mon, 17 Feb 2014 07:29:33 +0000 (07:29 +0000)]
AVX-512: implemented zext fron i1 to i16
llvm-svn: 201502
Gerolf Hoflehner [Mon, 17 Feb 2014 03:06:16 +0000 (03:06 +0000)]
fix for null VectorizedValue assertion in the SLP Vectorizer (in function vectorizeTree()). radar://
16064178
llvm-svn: 201501
Saleem Abdulrasool [Mon, 17 Feb 2014 00:40:22 +0000 (00:40 +0000)]
MCAsmParser: add some mixed argument tests
Add some tests to explicitly validate handling of comma and non-comma separated
arguments.
llvm-svn: 201500
Saleem Abdulrasool [Mon, 17 Feb 2014 00:40:17 +0000 (00:40 +0000)]
MCAsmParser: better handling for named arguments
Until this point only macro definition with named parameters were parsed but the
names were ignored. This adds support for using that information for named
parameter instantiation.
In order to support the full semantics of the keyword arguments, the arguments
are no longer lazily initialised since the keyword arguments can be specified
out of order and partially if they are defaulted. Prepopulate the arguments
with the default value for any defaulted parameters, and then parse the
specified arguments.
This simplies some of the handling of the arguments in the inner loop since
empty arguments simply increment the parameter index and move on.
Note that keyword and positional arguments cannot be mixed.
llvm-svn: 201499
Mark Seaborn [Sun, 16 Feb 2014 18:59:48 +0000 (18:59 +0000)]
Use 16 byte stack alignment for NaCl on ARM
NaCl's ARM ABI uses 16 byte stack alignment, so set that in
ARMSubtarget.cpp.
Using 16 byte alignment exposes an issue in code generation in which a
varargs function leaves a 4 byte gap between the values of r1-r3 saved
to the stack and the following arguments that were passed on the
stack. (Previously, this code only needed to support 4 byte and 8
byte alignment.)
With this issue, llc generated:
varargs_func:
sub sp, sp, #16
push {lr}
sub sp, sp, #12
add r0, sp, #16 // Should be 20
stm r0, {r1, r2, r3}
ldr r0, .LCPI0_0 // Address of va_list
add r1, sp, #16
str r1, [r0]
bl external_func
Fix the bug by checking for "Align > 4". Also simplify the code by
using OffsetToAlignment(), and update comments.
Differential Revision: http://llvm-reviews.chandlerc.com/D2677
llvm-svn: 201497
Arnold Schwaighofer [Sun, 16 Feb 2014 15:49:50 +0000 (15:49 +0000)]
SCEVExpander: Try hard not to create derived induction variables in other loops
During LSR of one loop we can run into a situation where we have to expand the
start of a recurrence of a loop induction variable in this loop. This start
value is a value derived of the induction variable of a preceeding loop. SCEV
has cannonicalized this value to a different recurrence than the recurrence of
the preceeding loop's induction variable (the type and/or step direction) has
changed). When we come to instantiate this SCEV we created a second induction
variable in this preceeding loop. This patch tries to base such derived
induction variables of the preceeding loop's induction variable.
This helps twolf on arm and seems to help scimark2 on x86.
Reapply with a fix for the case of a value derived from a pointer.
radar://
15970709
llvm-svn: 201496
Rafael Espindola [Sun, 16 Feb 2014 14:36:26 +0000 (14:36 +0000)]
Remove dead code, we already require cmake 2.8.8.
llvm-svn: 201495
Rafael Espindola [Sun, 16 Feb 2014 14:12:35 +0000 (14:12 +0000)]
Remove unnecessary typename.
Thanks to Elena Demikhovsky for noticing.
llvm-svn: 201494
Nico Rieck [Sun, 16 Feb 2014 13:28:39 +0000 (13:28 +0000)]
Fix more broken CHECK lines
llvm-svn: 201493
Nico Rieck [Sun, 16 Feb 2014 13:28:15 +0000 (13:28 +0000)]
Add extra CHECK prefix to tests with explicit prefix
These tests mistakenly assume that CHECK is still available even if an
explicit prefix is specified.
llvm-svn: 201492
Nico Rieck [Sun, 16 Feb 2014 13:27:39 +0000 (13:27 +0000)]
Actually call FileCheck in tests
llvm-svn: 201491
NAKAMURA Takumi [Sun, 16 Feb 2014 12:14:24 +0000 (12:14 +0000)]
llvmbuild: Exclude disabled targets from LLVMExports.cmake.
llvm-svn: 201490
NAKAMURA Takumi [Sun, 16 Feb 2014 12:14:13 +0000 (12:14 +0000)]
LLVMExports.cmake: Add System libs $(LIBS) to LLVMSupport, corresponding to r201077.
llvm-svn: 201489
NAKAMURA Takumi [Sun, 16 Feb 2014 12:14:03 +0000 (12:14 +0000)]
LLVMExports.cmake: Exclude gtest since they are not installed.
FIXME: gtest might be included if external project could refer to the build tree.
llvm-svn: 201488
Elena Demikhovsky [Sun, 16 Feb 2014 11:34:23 +0000 (11:34 +0000)]
AVX-512: simpyfied BUILD_VECTOR for masks; fixed cmp/test sequence
llvm-svn: 201487
Gerolf Hoflehner [Sun, 16 Feb 2014 10:43:25 +0000 (10:43 +0000)]
fixed typo in comment as my test commit
llvm-svn: 201486
NAKAMURA Takumi [Sun, 16 Feb 2014 10:16:09 +0000 (10:16 +0000)]
clang/unittests/AST,ASTMatchers: Remove _MSC_VER.
llvm-svn: 201485
NAKAMURA Takumi [Sun, 16 Feb 2014 10:15:57 +0000 (10:15 +0000)]
check-clang: Introduce the feature "non-ms-sdk" to suppress Driver/nostdincxx.cpp on msvc.
llvm-svn: 201484
NAKAMURA Takumi [Sun, 16 Feb 2014 10:15:46 +0000 (10:15 +0000)]
check-clang: Introduce the feature "dw2" to suppress CodeGenCXX/debug-info-namespace.cpp with *-win32.
FIXME: Could we add itanium triple here?
llvm-svn: 201483
NAKAMURA Takumi [Sun, 16 Feb 2014 10:15:34 +0000 (10:15 +0000)]
Introduce the feature "can-remove-opened-file" to suppress tests. [PR18856]
llvm-svn: 201482
Eric Christopher [Sun, 16 Feb 2014 08:46:55 +0000 (08:46 +0000)]
Add a DIELoc class to cover the DW_FORM_exprloc set of expressions
alongside DIEBlock and replace uses accordingly. Use DW_FORM_exprloc
in DWARF4 and later code. Update testcases.
Adding a DIELoc instead of using extra forms inside DIEBlock so
that we can keep location expressions separate from other uses. No
direct use at the moment, however, it's not a lot of code and
using a separately named class keeps it somewhat more obvious
what's going on in various locations.
llvm-svn: 201481
Nico Rieck [Sun, 16 Feb 2014 08:18:13 +0000 (08:18 +0000)]
Use -target instead of ignored -arch to fix x86_64 builders
llvm-svn: 201480
Nico Rieck [Sun, 16 Feb 2014 07:31:05 +0000 (07:31 +0000)]
Fix broken CHECK lines
llvm-svn: 201479
Nico Rieck [Sun, 16 Feb 2014 07:29:55 +0000 (07:29 +0000)]
Remove useless XPASS
llvm-svn: 201478
Nico Rieck [Sun, 16 Feb 2014 07:29:41 +0000 (07:29 +0000)]
Fix broken CHECK lines
llvm-svn: 201477
Nico Rieck [Sun, 16 Feb 2014 07:28:50 +0000 (07:28 +0000)]
FileCheck's -LABEL cannot be combined with -NOT or -DAG
llvm-svn: 201476
Nico Rieck [Sun, 16 Feb 2014 07:28:32 +0000 (07:28 +0000)]
Fix broken RUN lines
llvm-svn: 201475
Saleem Abdulrasool [Sun, 16 Feb 2014 04:56:31 +0000 (04:56 +0000)]
MCAsmParser: relax declaration parsing
The Linux kernel defines empty macros for compatibility with ARM UAL syntax.
The comma after the name is optional, and if present can be safely lexed. This
improves compatibility with the GNU assembler.
llvm-svn: 201474
Ed Maste [Sun, 16 Feb 2014 04:01:54 +0000 (04:01 +0000)]
elf-core: Plug latent memory leak
ProcessElfCore::ParseThreadContextsFromNoteSegment was leaking
ThreadData for each ELF note found in core file. We now allocate it
only once and use std::unique_ptr to ensure it is always being freed.
While at it make ParseFreeBSDThrMisc and ParseFreeBSDPrStatus take
ThreadData by reference, rather than pointer, since those arguments are
not optional.
Patch by Piotr Rak.
http://llvm-reviews.chandlerc.com/D2813
llvm-svn: 201473
Marshall Clow [Sun, 16 Feb 2014 01:57:26 +0000 (01:57 +0000)]
Remove tabs that crept in during an earlier refactoring. No functionality change
llvm-svn: 201472
Saleem Abdulrasool [Sun, 16 Feb 2014 00:16:41 +0000 (00:16 +0000)]
ARM IAS: (partially) support .arch_extension directive
This adds a partial implementation of the .arch_extension directive to the
integrated ARM assembler. There are a number of limitations to this
implementation arising from the target backend support rather than the
implementation itself. Namely, iWMMXT (v1 and v2), Maverick, and XScale support
is not present in the ARM backend. Currently, there is no check for A-class
only (needed for virt), and no ARMv6k detection (needed for os and sec). The
remainder of the extensions are fully supported.
llvm-svn: 201471
David Blaikie [Sat, 15 Feb 2014 21:03:07 +0000 (21:03 +0000)]
DebugInfo: imported_decl/using declarations at namespace scope
llvm-svn: 201470
David Blaikie [Sat, 15 Feb 2014 19:34:03 +0000 (19:34 +0000)]
DebugInfo: Deduplicate entries in the fission address table
This broke in r185459 while TLS support was being generalized to handle
non-symbol TLS representations.
I thought about/tried having an enum rather than a bool to track the
TLS-ness of the address table entry, but namespaces and naming seemed
more hassle than it was worth for only one caller that needed to specify
this.
llvm-svn: 201469
Argyrios Kyrtzidis [Sat, 15 Feb 2014 18:53:57 +0000 (18:53 +0000)]
[Sema] Fix assertion hit while trying to do constant evaluation for a dependent expression
inside a GNU statement expression.
rdar://
16064952
llvm-svn: 201468
David Blaikie [Sat, 15 Feb 2014 18:33:11 +0000 (18:33 +0000)]
DwarfDebug: Remove dead code.
llvm-svn: 201467
Arnold Schwaighofer [Sat, 15 Feb 2014 18:16:56 +0000 (18:16 +0000)]
Revert "SCEVExpander: Try hard not to create derived induction variables in other loops"
This reverts commit r201465. It broke an arm bot.
llvm-svn: 201466
Arnold Schwaighofer [Sat, 15 Feb 2014 17:11:56 +0000 (17:11 +0000)]
SCEVExpander: Try hard not to create derived induction variables in other loops
During LSR of one loop we can run into a situation where we have to expand the
start of a recurrence of a loop induction variable in this loop. This start
value is a value derived of the induction variable of a preceeding loop. SCEV
has cannonicalized this value to a different recurrence than the recurrence of
the preceeding loop's induction variable (the type and/or step direction) has
changed). When we come to instantiate this SCEV we created a second induction
variable in this preceeding loop. This patch tries to base such derived
induction variables of the preceeding loop's induction variable.
This helps twolf on arm and seems to help scimark2 on x86.
radar://
15970709
llvm-svn: 201465
Nico Rieck [Sat, 15 Feb 2014 08:35:56 +0000 (08:35 +0000)]
Cleanup docs about lit substitutions
llvm-svn: 201464
Craig Topper [Sat, 15 Feb 2014 07:29:18 +0000 (07:29 +0000)]
Add opcode extension forms of MOV8ri/MOV16ri/MOV32ri.
llvm-svn: 201463
David Majnemer [Sat, 15 Feb 2014 07:02:11 +0000 (07:02 +0000)]
MS ABI: Remove a useless FileCheck line
1. CHECK-NOT-LABEL is not valid FileCheck.
2. This test would not trigger the CHECK-NOT-LABEL even if 'interface' is
replaced with 'struct'.
llvm-svn: 201462
Nico Rieck [Sat, 15 Feb 2014 06:02:36 +0000 (06:02 +0000)]
Fix typo
llvm-svn: 201461
Marshall Clow [Sat, 15 Feb 2014 05:41:48 +0000 (05:41 +0000)]
Mark issue 2293, 2241 and 2308 as complete
llvm-svn: 201460
Marshall Clow [Sat, 15 Feb 2014 05:10:39 +0000 (05:10 +0000)]
First pass at the Issaquah issues list
llvm-svn: 201459
David Blaikie [Sat, 15 Feb 2014 05:09:38 +0000 (05:09 +0000)]
Move test inputs into the Inputs directory (improvement/fix to r201419)
llvm-svn: 201458
Ed Maste [Sat, 15 Feb 2014 02:31:22 +0000 (02:31 +0000)]
Simplify core file register context handling
This seems like a more straightforward approach for instantiating the
appropriate RegisterContext* class, made possible by Michael Sartain's
cleanup of the POSIX RegisterContext class hierarchy in r190647.
Better (user-facing) error handling is still needed.
llvm-svn: 201457
Manman Ren [Sat, 15 Feb 2014 01:29:02 +0000 (01:29 +0000)]
PGO: fix a bug in parsing pgo data.
When a function has a single counter, we will offset the pointer by 1 when
parsing the next function. If a function has multiple counters, we are
okay after skipping rest of the counters.
llvm-svn: 201456