Tom Stellard [Tue, 25 Jun 2013 02:39:20 +0000 (02:39 +0000)]
R600: Fix typo in R600Schedule.td
This should only make a difference in programs that use a lot of the
vector ALU instructions like BFI_INT and BIT_ALIGN. There is a slight
improvement in the phatk bitcoin mining kernel with this patch on
Evergreen (vector size == 1):
Before:
1173 Instruction Groups / 9520 dwords
After:
1167 Instruction Groups / 9510 dwords
Reviewed-by: Reviewed-by: Vincent Lejeune<vljn at ovi.com>
llvm-svn: 184819
Rafael Espindola [Tue, 25 Jun 2013 02:35:32 +0000 (02:35 +0000)]
Revert "Use the new PathV2 instead of implementing the logic in clang."
This reverts commit 184803 while I debug the failures on the bots.
llvm-svn: 184818
Chandler Carruth [Tue, 25 Jun 2013 02:18:39 +0000 (02:18 +0000)]
Revert r184787: "Added arm_neon intrinsic tests."
This test doesn't actually pass when run with llvm-lit for me or in
a bot that actually always tries to run it.
llvm-svn: 184817
Chandler Carruth [Tue, 25 Jun 2013 02:15:14 +0000 (02:15 +0000)]
Temporarily disable building the armv7 variants of profile_ios on
darwin.
After talking with Jim Grosbach pretty extensively, he was OK with me
punting on this to the Apple folks.
We agreed that the correct fix is either to extend the fake SDK headers
in compiler-rt to support the rest of libc needed by GCDAProfiling.c or
to teach the make build to test for the existence of a suitable SDK on
the system prior to building it. Both of these require someone with
access to the SDK which I don't have, and the latter (my preferred
solution) requires understanding the strange compiler-rt make build
system. Punting to Dan Dunbar or one of the others who support this
stuff on ios to write the appropriate fix, and we can let the build bots
proceed in the mean time.
llvm-svn: 184816
Jordan Rose [Tue, 25 Jun 2013 01:56:08 +0000 (01:56 +0000)]
[analyzer] Handle zeroing CXXConstructExprs.
Re-apply r184511, reverted in r184561, with the trivial default constructor
fast path removed -- it turned out not to be necessary here.
Certain expressions can cause a constructor invocation to zero-initialize
its object even if the constructor itself does no initialization. The
analyzer now handles that before evaluating the call to the constructor,
using the same "default binding" mechanism that calloc() uses, rather
than simply ignoring the zero-initialization flag.
<rdar://problem/
14212563>
llvm-svn: 184815
Jordan Rose [Tue, 25 Jun 2013 01:55:59 +0000 (01:55 +0000)]
[analyzer] Don't initialize virtual base classes more than once.
In order to make sure virtual base classes are always initialized once,
the AST contains initializers for the base class in /all/ of its
descendents, not just the immediate descendents. However, at runtime,
the most-derived object is responsible for initializing all the virtual
base classes; all the other initializers will be ignored.
The analyzer now checks to see if it's being called from another base
constructor, and if so does not perform virtual base initialization.
<rdar://problem/
14236851>
llvm-svn: 184814
Eli Friedman [Tue, 25 Jun 2013 01:55:41 +0000 (01:55 +0000)]
Fix regression from r184810.
Specifically, CallExpr::getCalleeDecl() can return null, so make sure to
handle that correctly.
llvm-svn: 184813
Nick Lewycky [Tue, 25 Jun 2013 01:49:44 +0000 (01:49 +0000)]
Make -vectorize-... proper cc1 flags instead of abusing -backend-option. Fixes
usage of clang as a library.
llvm-svn: 184812
Richard Smith [Tue, 25 Jun 2013 01:25:15 +0000 (01:25 +0000)]
Fix deserializing of class template partial specializations. Assign sequence
numbers as we deserialize class template partial specializations. We can't
assume that the old sequence numbers will work.
The sequence numbers are still deterministic, but are now a lot less
predictable for class template partial specializations in modules/PCH.
llvm-svn: 184811
Eli Friedman [Tue, 25 Jun 2013 01:24:22 +0000 (01:24 +0000)]
Fix noexcept for delete expressions.
Using "delete" on a pointer to an incomplete type can't throw.
While I'm here, clean up the signature of the canCalleeThrow() helper.
llvm-svn: 184810
NAKAMURA Takumi [Tue, 25 Jun 2013 01:14:20 +0000 (01:14 +0000)]
PPCAsmParser.cpp: Quote "@l/@ha" in comments. [-Wdocumentation]
llvm-svn: 184809
Eric Christopher [Tue, 25 Jun 2013 01:12:25 +0000 (01:12 +0000)]
Add an autoconf option for turning on -gsplit-dwarf by default
when building llvm. This saves quite a bit of time and space when
linking. Please report any problems via bugzilla.
Caveats:
a) This will only work on linux
b) This requires a fairly new binutils
c) This requires a fairly new gdb
llvm-svn: 184808
Rafael Espindola [Tue, 25 Jun 2013 01:11:59 +0000 (01:11 +0000)]
Remove PathV1.h from Driver.cpp.
llvm-svn: 184807
Rafael Espindola [Tue, 25 Jun 2013 01:10:36 +0000 (01:10 +0000)]
Create a replacement for sys::Path::PathSeparator.
llvm-svn: 184806
Chandler Carruth [Tue, 25 Jun 2013 00:57:06 +0000 (00:57 +0000)]
Remove the sysroot (or isysroot) restriction from the GCDAProfile.c
runtime in the Makefile build system as well. Sorry for the temporary
fallout, it took me a while to find these bits.
Bill, I'm not at all confident of the change for Darwin and iOS, but as
discussed we're completely blocked on fixing this. Anyways, please
review and let me know if this will work for you guys. If necessary,
I can work with you to rig up an errno.h stub for Darwin, but I expect
that to be... moderately challenging.
llvm-svn: 184805
Nico Weber [Tue, 25 Jun 2013 00:55:57 +0000 (00:55 +0000)]
Formatter/ObjC: Correctly format casts in objc message send expressions.
llvm-svn: 184804
Rafael Espindola [Tue, 25 Jun 2013 00:55:28 +0000 (00:55 +0000)]
Use the new PathV2 instead of implementing the logic in clang.
llvm-svn: 184803
Rafael Espindola [Tue, 25 Jun 2013 00:49:40 +0000 (00:49 +0000)]
Cleanup in unique_file when we only want the name.
This is really ugly, but it is no worse than what we have in clang right now and
it is better to get it working first and clean/optimize it afterwards.
Will be tested from clang in the next patch.
llvm-svn: 184802
Eli Friedman [Tue, 25 Jun 2013 00:46:32 +0000 (00:46 +0000)]
Delete a couple dead checks.
Use castAs<> where appropriate. Don't check conditionals which are
always true. Delete a bit of dead code. Reindent a bunch of code which
is no longer guarded by an if statement.
llvm-svn: 184801
Eric Christopher [Tue, 25 Jun 2013 00:40:03 +0000 (00:40 +0000)]
As far as I know no linker needs or wants the -g flag.
llvm-svn: 184800
Chandler Carruth [Tue, 25 Jun 2013 00:37:32 +0000 (00:37 +0000)]
Address a few of the issues in GCDAProfiling I noted when looking
through Bill's patch:
1) Correctly test the file descriptor after the sceond attempt at
creating the file.
2) Make the filename a global so that we can issue error messages from
other routines.
3) Check errno in several places and print it out so that errors are
easier to track down.
I don't really expect any of these to fix the current failures I'm
seeing, but I'm hopeful they'll at least let me debug them.
llvm-svn: 184799
Chandler Carruth [Tue, 25 Jun 2013 00:37:28 +0000 (00:37 +0000)]
Remove the sysroot restriction from building GCDAProfiling.c.
We really need the C standard library to be available to implement the
profiling runtime library reasonably, and replicating everything in the
SDKs tree really isn't addressing any problems we have. Notably, all of
the sanitizer runtimes take the same approach, and this isn't a library
which could end up in a bootstrapping problem where the system headers
aren't even available.
This will hopefully prevent subsequent changes which start using various
other bits of C standard library to make things more debuggable.
llvm-svn: 184798
Sean Callanan [Tue, 25 Jun 2013 00:32:45 +0000 (00:32 +0000)]
Fixed the instruction emulation so that it doesn't
print to standard output as part of normal
operation.
<rdar://problem/
14247606>
llvm-svn: 184797
Nico Weber [Tue, 25 Jun 2013 00:25:40 +0000 (00:25 +0000)]
Formatter/Objc: Add a test that checks that @import is formatted correctly.
llvm-svn: 184796
Eli Friedman [Tue, 25 Jun 2013 00:25:19 +0000 (00:25 +0000)]
Delete dead code.
llvm-svn: 184795
Eric Christopher [Tue, 25 Jun 2013 00:21:29 +0000 (00:21 +0000)]
Reorder builds based by ordering.
llvm-svn: 184794
Eric Christopher [Mon, 24 Jun 2013 23:20:04 +0000 (23:20 +0000)]
Remove all non-linker oriented compile options from the linker
command line. Change the darwin universal binary options to
be TargetCommonOpts so that they'll be passed to the linker since
-arch at least is still needed.
Someone on darwin with a buildit based build should probably verify
that this doesn't break anything there.
llvm-svn: 184793
Eric Christopher [Mon, 24 Jun 2013 23:20:02 +0000 (23:20 +0000)]
80-column and tab character fixes.
llvm-svn: 184792
Richard Smith [Mon, 24 Jun 2013 22:51:00 +0000 (22:51 +0000)]
Check for matching template-parameter-lists when merging template declarations.
llvm-svn: 184791
Rafael Espindola [Mon, 24 Jun 2013 22:07:15 +0000 (22:07 +0000)]
Accept both / and \\ to fix the windows bots.
llvm-svn: 184790
Ted Kremenek [Mon, 24 Jun 2013 21:35:39 +0000 (21:35 +0000)]
Tweak -Wdeprecated-objc-pointer-introspection to have a subgroup for results of using -performSelectorXXX.
-performSelector: and friends return a value that is boxed as an Objective-C
pointer. Sometimes it is an Objective-C pointer, sometimes it isn't.
Some clients may wish to silence this warning based on calling
this method.
Fixes <rdar://problem/
14147304>
llvm-svn: 184789
Eric Christopher [Mon, 24 Jun 2013 21:34:55 +0000 (21:34 +0000)]
Formatting.
llvm-svn: 184788
Michael Gottesman [Mon, 24 Jun 2013 21:25:42 +0000 (21:25 +0000)]
Added arm_neon intrinsic tests.
This is a large test and thus it will only run if you pass in --param
run_long_tests=trueto LIT. This is intended so that this test can run on
buildbots and not when one runs make check.
llvm-svn: 184787
Michael Gottesman [Mon, 24 Jun 2013 21:25:39 +0000 (21:25 +0000)]
[NeonIntrinsicTestEmitter] vld1/vst1 do not require the :64 hint.
llvm-svn: 184786
Michael Gottesman [Mon, 24 Jun 2013 21:25:37 +0000 (21:25 +0000)]
[NeonIntrinsicTestEmitter] Fix incorrect FileCheck pattern where we were expecting a ',' prefix to alignment hints.
llvm-svn: 184785
Michael Gottesman [Mon, 24 Jun 2013 21:25:34 +0000 (21:25 +0000)]
[NeonIntrinsicTestEmitter] Add requirement to arm neon intrinsic tests for the feature long_tests.
This will prevent the tests from running on normal make check. You will need to
actually pass in --param run_long_tests=true to LIT in order to run these.
llvm-svn: 184784
Adrian Prantl [Mon, 24 Jun 2013 21:19:43 +0000 (21:19 +0000)]
typo.
llvm-svn: 184783
Argyrios Kyrtzidis [Mon, 24 Jun 2013 21:19:12 +0000 (21:19 +0000)]
[libclang/codecompletion] Make sure the top-level decl hash takes into account ImportDecls.
The top-level hash is used to determine if we need to update the global code-completion results.
ImportDecls did not affect the hash so a newly introduced ImportDecl would not trigger an update of the global results.
rdar://
14202797
llvm-svn: 184782
Eric Christopher [Mon, 24 Jun 2013 21:07:27 +0000 (21:07 +0000)]
Use const references instead of pointers to references that are
never modified. No functional change.
llvm-svn: 184781
Eli Friedman [Mon, 24 Jun 2013 20:24:19 +0000 (20:24 +0000)]
Change mangling of objects inside block literals.
This changes the mangling of local static variables/etc. inside blocks
to do something simple and sane. This avoids depending on the way we mangle
blocks, which isn't really appropriate here.
John, please take a look at this to make sure the mangling I chose is sane.
Fixes <rdar://problem/
14074423>.
llvm-svn: 184780
Reid Kleckner [Mon, 24 Jun 2013 20:08:40 +0000 (20:08 +0000)]
Fix "funciton" typo from r184763
llvm-svn: 184779
Jim Ingham [Mon, 24 Jun 2013 19:37:49 +0000 (19:37 +0000)]
Direct dir to target.source-map.
llvm-svn: 184778
Reid Kleckner [Mon, 24 Jun 2013 19:21:52 +0000 (19:21 +0000)]
[ms-cxxabi] Use sugared types in the mangler instead of canonical types
At this point, it's clear that the MSVC mangler uses the type-as-written
instead of the canonical type, so this should bring us closer to MSVC.
The main thrust of this change is to fix the way we mangle decayed array
parameters of function pointer parameters. With a DecayedType sugar
node, this code can now be much simpler.
Fixes PR16096.
This also fixes a separate issue that Richard spotted in review.
Because separate declarations of the same entity can be spelled and
mangled differently, MSVC always mangles the earliest declaration in an
attempt to avoid link errors. Clang now does the same.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D844
llvm-svn: 184777
Argyrios Kyrtzidis [Mon, 24 Jun 2013 19:01:18 +0000 (19:01 +0000)]
[arcmt/driver] For the -ccc-arcmt-* flags, claim them when -fno-objc-arc is passed to avoid the
"argument unused during compilation" warning.
rdar://
14240566
llvm-svn: 184776
Eli Friedman [Mon, 24 Jun 2013 18:47:11 +0000 (18:47 +0000)]
Use getAs<> where appropriate on QualTypes instead of using dyn_cast.
llvm-svn: 184775
Rafael Espindola [Mon, 24 Jun 2013 18:33:43 +0000 (18:33 +0000)]
Convert some uses of llvm::sys::Path.
llvm-svn: 184774
Rafael Espindola [Mon, 24 Jun 2013 18:19:15 +0000 (18:19 +0000)]
Use the simpler version of llvm::sys::fs::exists.
llvm-svn: 184770
Han Ming Ong [Mon, 24 Jun 2013 18:15:05 +0000 (18:15 +0000)]
<rdar://problem/
14182286>
Made sure that temporary object created from HarmonizeThreadIdsForProfileData() doesn’t get passed around without creating an object first.
Reviewed by Greg
llvm-svn: 184769
Anna Zaks [Mon, 24 Jun 2013 18:12:12 +0000 (18:12 +0000)]
[analyzer] Add a debug checker that prints Exploded Graph
Add a debug checker that is useful to understand how the ExplodedGraph is
built; it can be triggered using the following command:
clang -cc1 -analyze -analyzer-checker=debug.ViewExplodedGraph my_program.c
A patch by Béatrice Creusillet!
llvm-svn: 184768
Ulrich Weigand [Mon, 24 Jun 2013 18:08:03 +0000 (18:08 +0000)]
[PowerPC] Support some miscellaneous mnemonics in the asm parser
This adds support for the following extended mnemonics:
xnop
mr.
not
not.
la
llvm-svn: 184767
Rafael Espindola [Mon, 24 Jun 2013 17:59:44 +0000 (17:59 +0000)]
Convert last use of PathV1.h in Compilation.cpp
The way we decide which file to remove is fairly odd. I took a quick look at
maybe changing that, but it would be a more work than I want to put at this
right now, so I left pair of FIXMEs.
llvm-svn: 184766
Sean Callanan [Mon, 24 Jun 2013 17:58:46 +0000 (17:58 +0000)]
We set the error when a breakpoint condition
doesn't return anything; that's great.
We should probably also return rather than
trying to access the nonexistent return value.
<rdar://problem/
14009519>
llvm-svn: 184765
Rafael Espindola [Mon, 24 Jun 2013 17:54:24 +0000 (17:54 +0000)]
Add a simpler version of is_regular_file.
llvm-svn: 184764
Reid Kleckner [Mon, 24 Jun 2013 17:51:48 +0000 (17:51 +0000)]
[AST] Introduce a new DecayedType sugar node
The goal of this sugar node is to be able to look at an arbitrary
FunctionType and tell if any of the parameters were decayed from an
array or function type. Ultimately this is necessary to implement
Microsoft's C++ name mangling scheme, which mangles decayed arrays
differently from normal pointers.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D1014
llvm-svn: 184763
Kaelyn Uhrain [Mon, 24 Jun 2013 17:49:03 +0000 (17:49 +0000)]
Add the global namespace (the "::" namespace specifier) to the list of
namespaces to try for potential typo corrections.
llvm-svn: 184762
David Blaikie [Mon, 24 Jun 2013 17:34:33 +0000 (17:34 +0000)]
DebugInfo: DIBuilder changes to match DIEnumerator changes in r184694
Representing enumerators by int64 instead of uint64 for now. At some
point we need to address the underlying issue of representation
depending on the specific enumeration.
llvm-svn: 184761
Chad Rosier [Mon, 24 Jun 2013 17:29:51 +0000 (17:29 +0000)]
Improve diagnostics when getSizeInBits is called on the Other type.
llvm-svn: 184760
Howard Hinnant [Mon, 24 Jun 2013 17:17:28 +0000 (17:17 +0000)]
Implement full support for non-pointer pointers in custom allocators for forward_list.
llvm-svn: 184759
Benjamin Kramer [Mon, 24 Jun 2013 17:03:25 +0000 (17:03 +0000)]
PPC: Remove default case from fully covered switch.
llvm-svn: 184758
Ulrich Weigand [Mon, 24 Jun 2013 17:00:22 +0000 (17:00 +0000)]
[PowerPC] Add some FIXMEs
A bunch of extendend mnemomics ought to support '.' forms.
Add FIXMEs to the test case for those.
llvm-svn: 184757
Aaron Watry [Mon, 24 Jun 2013 16:57:57 +0000 (16:57 +0000)]
R600: Fix spelling error in comment
our -> or
llvm-svn: 184756
Reid Kleckner [Mon, 24 Jun 2013 16:56:16 +0000 (16:56 +0000)]
Check the canonical parameter type with getAs<>() in a static checker
This will prevent breakage when I introduce the DecayedType sugar node.
llvm-svn: 184755
Ulrich Weigand [Mon, 24 Jun 2013 16:52:04 +0000 (16:52 +0000)]
[PowerPC] Add predicted forms of branches
This adds support for the predicted forms of branches (+/-).
There are three cases to consider:
- Branches using a PPC::Predicate code
For these, I've added new PPC::Predicate codes corresponding
to the BO values for predicted branch forms, and updated insn
printing to print them correctly. I've also added new aliases
for the asm parser matching the new forms.
- bt/bf
I've added new aliases matching to gBC etc.
- bd(n)z variants
I've added new instruction patterns for the predicted forms.
In all cases, the new patterns are used for the asm parser only.
(The new infrastructure ought to be sufficient to allow use by
the compiler too at some point.)
llvm-svn: 184754
Rafael Espindola [Mon, 24 Jun 2013 16:46:15 +0000 (16:46 +0000)]
Convert a use of PathV1.h
llvm-svn: 184753
Dmitry Vyukov [Mon, 24 Jun 2013 16:28:02 +0000 (16:28 +0000)]
tsan: make the test more robust
currently it episodically fails
the hypothesis it is due to racy race detection algorithm
the sleep should make it more robust
llvm-svn: 184752
Matt Beaumont-Gay [Mon, 24 Jun 2013 16:12:35 +0000 (16:12 +0000)]
Add some invalid-decl checks to clang_Type_getOffsetOf.
print-size-type.cpp was checking for specific record layout output for invalid
decls; I've removed the checks but left the records as tests for not crashing.
llvm-svn: 184751
NAKAMURA Takumi [Mon, 24 Jun 2013 16:05:21 +0000 (16:05 +0000)]
Move llvm/test/DebugInfo/arguments.ll to X86, for now. It is still Windows' PECOFF incompatible.
llvm-svn: 184750
Nadav Rotem [Mon, 24 Jun 2013 15:59:47 +0000 (15:59 +0000)]
Rename the variable to fix a warning. Thanks Andy Gibbs.
llvm-svn: 184749
Ed Maste [Mon, 24 Jun 2013 15:40:27 +0000 (15:40 +0000)]
Tests require GNU make, called gmake on FreeBSD
llvm-svn: 184748
Dmitry Vyukov [Mon, 24 Jun 2013 15:17:36 +0000 (15:17 +0000)]
tsan: update dynamic export syms file
now it includes proper functions (including interceptors)
and does not include local functions that lead to build failures
llvm-svn: 184747
Ed Maste [Mon, 24 Jun 2013 15:09:18 +0000 (15:09 +0000)]
Sync FreeBSD files to Linux equivalents, to reduce noise in diff
- Sort functions in the same order
- Match whitespace
- Remove commetned out code
- Make filename in comments match filename
llvm-svn: 184746
Ed Maste [Mon, 24 Jun 2013 15:04:47 +0000 (15:04 +0000)]
Update comment to match class name
llvm-svn: 184745
Ed Maste [Mon, 24 Jun 2013 15:03:16 +0000 (15:03 +0000)]
Use canonical termios.h location
llvm-svn: 184744
Rafael Espindola [Mon, 24 Jun 2013 15:00:11 +0000 (15:00 +0000)]
Convert a use of PathV1.h.
llvm-svn: 184743
Ed Maste [Mon, 24 Jun 2013 14:55:03 +0000 (14:55 +0000)]
Eliminate missing virtual destructor warning on FreeBSD
Akin to r181712 (
88e529b7) of Linux/ProcessMonitor.cpp
llvm-svn: 184742
Ed Maste [Mon, 24 Jun 2013 14:51:39 +0000 (14:51 +0000)]
Update for Linux->POSIX rename
Revision r147613 (
2341d35) renamed this file with s/Linux/POSIX/, but
header guards and comments were not updated to match.
llvm-svn: 184741
Reid Kleckner [Mon, 24 Jun 2013 14:38:26 +0000 (14:38 +0000)]
[Sema] Call CheckParmForFunctionDef on ObjC method parameters
CheckParmForFunctionDef performs standard checks for type completeness
and other things like a destructor check for the MSVC++ ABI.
llvm-svn: 184740
Evgeniy Stepanov [Mon, 24 Jun 2013 14:25:33 +0000 (14:25 +0000)]
[sanitizer] Intercept sysinfo.
llvm-svn: 184739
Andy Gibbs [Mon, 24 Jun 2013 14:05:59 +0000 (14:05 +0000)]
Using offsetof to an item within an array is an extension so mark it as such to avoid compiler warnings.
llvm-svn: 184738
Andy Gibbs [Mon, 24 Jun 2013 14:04:57 +0000 (14:04 +0000)]
Fix some more mismatched integer types causing compiler warnings.
llvm-svn: 184737
Evgeniy Stepanov [Mon, 24 Jun 2013 14:03:13 +0000 (14:03 +0000)]
[sanitizer] Fix TSan build.
llvm-svn: 184736
Evgeniy Stepanov [Mon, 24 Jun 2013 13:56:14 +0000 (13:56 +0000)]
[sanitizer] Intercept inet_aton.
llvm-svn: 184735
Evgeniy Stepanov [Mon, 24 Jun 2013 13:48:42 +0000 (13:48 +0000)]
[msan] Unpoison param-tls in signal handler wrapper.
This an entry point from uninstrumented code.
llvm-svn: 184734
Ed Maste [Mon, 24 Jun 2013 13:29:34 +0000 (13:29 +0000)]
Remove comment that is no longer applicable
Since r181446 the m_private_run_lock has been used for all platforms.
llvm-svn: 184733
Reid Kleckner [Mon, 24 Jun 2013 13:21:16 +0000 (13:21 +0000)]
Look for Python 2 before Python 3 in CMakeLists.txt
All of LLVM's Python scripts only support Python 2 for widely understood
reasons.
Patch by Yonggang Luo.
llvm-svn: 184732
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:59 +0000 (13:19 +0000)]
llvm/test/CodeGen/X86: Add explicit -mtriple=x86_64-unknown-unknown.
llvm-svn: 184731
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:52 +0000 (13:19 +0000)]
llvm/test/CodeGen/X86/legalize-shift-64.ll: Add explicit -mtriple=i686-unknown-unknown.
llvm-svn: 184730
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:47 +0000 (13:19 +0000)]
llvm/test/DebugInfo/arguments.ll: Add explicit -mtriple=x86_64-unknown-unknown.
llvm-svn: 184729
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:41 +0000 (13:19 +0000)]
NVPTXTargetObjectFile.h: Initialize some pointers as NULL in the constructor of NVPTXTargetObjectFile. ~NVPTXTargetObjectFile() tries to delete them.
It caused crash on some hosts since r184595.
llvm-svn: 184728
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:26 +0000 (13:19 +0000)]
clang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp: Suppress unexpected failures on MS hosts.
FIXME: A couple of tests have been suppressed.
I know it'd be bad with _MSC_VER here, though.
llvm-svn: 184727
NAKAMURA Takumi [Mon, 24 Jun 2013 13:19:20 +0000 (13:19 +0000)]
clang/test/Driver/coverage-ld.c: Tweak expressions to match dosish pathsep on win32 hosts.
llvm-svn: 184726
Ulrich Weigand [Mon, 24 Jun 2013 12:49:20 +0000 (12:49 +0000)]
[PowerPC] Add t/f branch mnemonics to asm parser
This adds the bt/bf/bd(n)zt/bd(n)zf mnemonics as aliases for the
asm parser, resolving to the generic conditional patterns.
llvm-svn: 184725
Arnold Schwaighofer [Mon, 24 Jun 2013 12:09:15 +0000 (12:09 +0000)]
Reapply 184685 after the SetVector iteration order fix.
This should hopefully have fixed the stage2/stage3 miscompare on the dragonegg
testers.
"LoopVectorize: Use the dependence test utility class
We now no longer need alias analysis - the cases that alias analysis would
handle are now handled as accesses with a large dependence distance.
We can now vectorize loops with simple constant dependence distances.
for (i = 8; i < 256; ++i) {
a[i] = a[i+4] * a[i+8];
}
for (i = 8; i < 256; ++i) {
a[i] = a[i-4] * a[i-8];
}
We would be able to vectorize about 200 more loops (in many cases the cost model
instructs us no to) in the test suite now. Results on x86-64 are a wash.
I have seen one degradation in ammp. Interestingly, the function in which we
now vectorize a loop is never executed so we probably see some instruction
cache effects. There is a 2% improvement in h264ref. There is one or the other
TSCV loop kernel that speeds up.
radar://
13681598"
llvm-svn: 184724
Arnold Schwaighofer [Mon, 24 Jun 2013 12:09:12 +0000 (12:09 +0000)]
LoopVectorize: Use SetVector for the access set
We are creating the runtime checks using this set so we need a deterministic
iteration order.
llvm-svn: 184723
Ulrich Weigand [Mon, 24 Jun 2013 11:55:21 +0000 (11:55 +0000)]
[PowerPC] Support generic conditional branches in asm parser
This adds instruction patterns to cover the generic forms of
the conditional branch instructions. This allows the assembler
to support the generic mnemonics.
The compiler will still generate the various specific forms
of the instruction that were already supported.
llvm-svn: 184722
Ulrich Weigand [Mon, 24 Jun 2013 11:03:33 +0000 (11:03 +0000)]
[PowerPC] Support absolute branches
There is currently only limited support for the "absolute" variants
of branch instructions. This patch adds support for the absolute
variants of all branches that are currently otherwise supported.
This requires adding new fixup types so that the correct variant
of relocation type can be selected by the object writer.
While the compiler will continue to usually choose the relative
branch variants, this will allow the asm parser to fully support
the absolute branches, with either immediate (numerical) or
symbolic target addresses.
No change in code generation intended.
llvm-svn: 184721
Ulrich Weigand [Mon, 24 Jun 2013 11:02:38 +0000 (11:02 +0000)]
[PowerPC] Support bd(n)zl and bd(n)zlrl
This adds support for the bd(n)zl and bd(n)zlrl instructions.
The patterns are currently used for the asm parser only.
llvm-svn: 184720
Ulrich Weigand [Mon, 24 Jun 2013 11:02:19 +0000 (11:02 +0000)]
[PowerPC] Support b(cond)l in the asm parser
This patch adds support for the conditional variants of bl.
The pattern is currently used by the asm parser only.
llvm-svn: 184719
Ulrich Weigand [Mon, 24 Jun 2013 11:01:55 +0000 (11:01 +0000)]
[PowerPC] Support blrl and variants in the asm parser
This patch adds support for blrl and its conditional variants.
The patterns are (currently) used for the asm parser only.
llvm-svn: 184718
Evgeniy Stepanov [Mon, 24 Jun 2013 10:43:23 +0000 (10:43 +0000)]
[sanitizer] Intercept readv, preadv, writev, pwritev.
llvm-svn: 184717