Sylvestre Ledru [Tue, 18 Feb 2014 17:21:45 +0000 (17:21 +0000)]
Remove trailing spaces (no other change). Bikeshed #2
llvm-svn: 201584
Jordan Rose [Tue, 18 Feb 2014 17:06:30 +0000 (17:06 +0000)]
[analyzer] Teach CastSizeChecker about flexible array members.
...as well as fake flexible array members: structs that end in arrays with
length 0 or 1.
Patch by Daniel Fahlgren!
llvm-svn: 201583
Daniel Sanders [Tue, 18 Feb 2014 15:57:52 +0000 (15:57 +0000)]
[mips] Add support for ELF64-mips and the R_MIPS_32/R_MIPS_64 relocs for it.
Summary:
This fixes several test failures when building LLVM on a MIPS host.
The failures were:
LLVM :: DebugInfo/enum.ll
LLVM :: DebugInfo/inlined-arguments.ll
LLVM :: DebugInfo/member-order.ll
LLVM :: DebugInfo/namespace.ll
LLVM :: DebugInfo/template-recursive-void.ll
LLVM :: DebugInfo/tu-composite.ll
LLVM :: DebugInfo/two-cus-from-same-file.ll
LLVM :: Linker/type-unique-simple-a.ll
LLVM :: Linker/type-unique-simple2.ll
Reviewers: jacksprat, matheusalmeida
Reviewed By: matheusalmeida
Differential Revision: http://llvm-reviews.chandlerc.com/D2721
llvm-svn: 201582
Rafael Espindola [Tue, 18 Feb 2014 15:33:12 +0000 (15:33 +0000)]
Rename some member variables from TD to DL.
TargetData was renamed DataLayout back in r165242.
llvm-svn: 201581
Timur Iskhodzhanov [Tue, 18 Feb 2014 15:31:29 +0000 (15:31 +0000)]
[ASan/Win] Add a couple more DLL thunks
llvm-svn: 201580
Dmitri Gribenko [Tue, 18 Feb 2014 15:29:17 +0000 (15:29 +0000)]
Add files that I forgot to svn add in 201578.
llvm-svn: 201579
Dmitri Gribenko [Tue, 18 Feb 2014 15:20:02 +0000 (15:20 +0000)]
libclang: fix a bug in processing invalid arguments, introduced in r201249
Recommit r201346, reverted in r201373.
llvm-svn: 201578
Ed Maste [Tue, 18 Feb 2014 15:12:35 +0000 (15:12 +0000)]
elf-core: support 32- and 64-bit x86 registers
This way the same RegisterContext class can support i386 and
amd64/x86_64 core files.
With some further refinement we should be able to merge all of the
processor-specific RegisterContextPOSIX_* classes into a single shared
one.
llvm-svn: 201577
Kostya Serebryany [Tue, 18 Feb 2014 14:56:19 +0000 (14:56 +0000)]
[sanitizer] when reporting a deadlock also report the lock cycle
llvm-svn: 201576
Alexey Samsonov [Tue, 18 Feb 2014 14:28:53 +0000 (14:28 +0000)]
[CMake] Rename several variables
llvm-svn: 201575
David Majnemer [Tue, 18 Feb 2014 14:20:10 +0000 (14:20 +0000)]
MS ABI: Refactor extended qualifiers
Extended qualifiers can appear in many places, refactor the code so it's
more reusable. Add tests in areas where we've increased compatibility.
llvm-svn: 201574
Marshall Clow [Tue, 18 Feb 2014 14:03:17 +0000 (14:03 +0000)]
Add myself as owner for libc++
llvm-svn: 201573
Kostya Serebryany [Tue, 18 Feb 2014 13:41:49 +0000 (13:41 +0000)]
[sanitizer] make sure the deadlock detector survives the change of epochs; add a test and a comment
llvm-svn: 201572
Evgeniy Stepanov [Tue, 18 Feb 2014 13:11:40 +0000 (13:11 +0000)]
[asan] Relax stack-overflow test.
llvm-svn: 201571
Sylvestre Ledru [Tue, 18 Feb 2014 12:59:51 +0000 (12:59 +0000)]
Remove trailing spaces (no other change)
llvm-svn: 201570
David Majnemer [Tue, 18 Feb 2014 12:58:35 +0000 (12:58 +0000)]
MS ABI: Add support for mangling __restrict
Pointer types in the MSVC ABI are a bit awkward, the width of the
pointer is considered a kind of CVR qualifier.
Restrict is handled similarly to const and volatile but is mangled after
the pointer width qualifier.
This fixes PR18880.
llvm-svn: 201569
Kostya Serebryany [Tue, 18 Feb 2014 12:50:31 +0000 (12:50 +0000)]
[tsan] in deadlock detector do not register locks on their creation and unregister them on destruction; added a relevant test
llvm-svn: 201568
Evgeniy Stepanov [Tue, 18 Feb 2014 12:29:39 +0000 (12:29 +0000)]
[asan] Disable stack-overflow test on main thread.
Failing on some bots.
llvm-svn: 201567
Alexey Samsonov [Tue, 18 Feb 2014 12:01:24 +0000 (12:01 +0000)]
[CMake] Don't build ASan for iossim if -mmacosx-version-min is specified
llvm-svn: 201566
Evgeniy Stepanov [Tue, 18 Feb 2014 11:49:52 +0000 (11:49 +0000)]
[asan] Stack overflow detection.
Report segmentation faults near or below stack bottom as stack-overflow
(not stack-buffer-overflow!).
llvm-svn: 201565
Evgeniy Stepanov [Tue, 18 Feb 2014 11:32:24 +0000 (11:32 +0000)]
[asan] Fix one test on OSX.
llvm-svn: 201564
Robert Lytton [Tue, 18 Feb 2014 11:21:59 +0000 (11:21 +0000)]
XCore target: Handle common linkage
llvm-svn: 201563
Robert Lytton [Tue, 18 Feb 2014 11:21:53 +0000 (11:21 +0000)]
XCore target: addMemOperand as necessary
BuildMI instructions were not including MachineMemOperand information.
This was discovered by 'SingleSource/Benchmarks/Stanford/Oscar' failing
due to a FrameIndex load incorrectly being hoisted by postra-machine-licm.
No other tests have been found to fail.
llvm-svn: 201562
Robert Lytton [Tue, 18 Feb 2014 11:21:48 +0000 (11:21 +0000)]
XCore target: Fix llvm.eh.return and EH info register handling
llvm-svn: 201561
Tim Northover [Tue, 18 Feb 2014 11:20:44 +0000 (11:20 +0000)]
Darwin builds: handle different possible form for SDKROOT.
Modifying build_llvm to handle SDKROOT being the name of an SDK rather than a
path. This will still work if SDKROOT is a path.
rdar://problem/
15162322
llvm-svn: 201560
Tim Northover [Tue, 18 Feb 2014 11:17:29 +0000 (11:17 +0000)]
GlobalMerge: move "-global-merge" option to the pass itself.
It's rather odd to have the flag enabling and disabling this pass only affect a
single target.
llvm-svn: 201559
Tim Northover [Tue, 18 Feb 2014 11:15:32 +0000 (11:15 +0000)]
X86: use vpsllvd (& friends) for 16-bit shifts on Haswell
llvm-svn: 201558
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