platform/upstream/llvm.git
11 years agoR600: Fix typo in R600Schedule.td
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

11 years agoRevert "Use the new PathV2 instead of implementing the logic in clang."
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

11 years agoRevert r184787: "Added arm_neon intrinsic tests."
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

11 years agoTemporarily disable building the armv7 variants of profile_ios on
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

11 years ago[analyzer] Handle zeroing CXXConstructExprs.
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

11 years ago[analyzer] Don't initialize virtual base classes more than once.
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

11 years agoFix regression from r184810.
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

11 years agoMake -vectorize-... proper cc1 flags instead of abusing -backend-option. Fixes
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

11 years agoFix deserializing of class template partial specializations. Assign sequence
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

11 years agoFix noexcept for delete expressions.
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

11 years agoPPCAsmParser.cpp: Quote "@l/@ha" in comments. [-Wdocumentation]
NAKAMURA Takumi [Tue, 25 Jun 2013 01:14:20 +0000 (01:14 +0000)]
PPCAsmParser.cpp: Quote "@l/@ha" in comments. [-Wdocumentation]

llvm-svn: 184809

11 years agoAdd an autoconf option for turning on -gsplit-dwarf by default
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

11 years agoRemove PathV1.h from Driver.cpp.
Rafael Espindola [Tue, 25 Jun 2013 01:11:59 +0000 (01:11 +0000)]
Remove PathV1.h from Driver.cpp.

llvm-svn: 184807

11 years agoCreate a replacement for sys::Path::PathSeparator.
Rafael Espindola [Tue, 25 Jun 2013 01:10:36 +0000 (01:10 +0000)]
Create a replacement for sys::Path::PathSeparator.

llvm-svn: 184806

11 years agoRemove the sysroot (or isysroot) restriction from the GCDAProfile.c
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

11 years agoFormatter/ObjC: Correctly format casts in objc message send expressions.
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

11 years agoUse the new PathV2 instead of implementing the logic in clang.
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

11 years agoCleanup in unique_file when we only want the name.
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

11 years agoDelete a couple dead checks.
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

11 years agoAs far as I know no linker needs or wants the -g flag.
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

11 years agoAddress a few of the issues in GCDAProfiling I noted when looking
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

11 years agoRemove the sysroot restriction from building GCDAProfiling.c.
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

11 years agoFixed the instruction emulation so that it doesn't
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

11 years agoFormatter/Objc: Add a test that checks that @import is formatted correctly.
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

11 years agoDelete dead code.
Eli Friedman [Tue, 25 Jun 2013 00:25:19 +0000 (00:25 +0000)]
Delete dead code.

llvm-svn: 184795

11 years agoReorder builds based by ordering.
Eric Christopher [Tue, 25 Jun 2013 00:21:29 +0000 (00:21 +0000)]
Reorder builds based by ordering.

llvm-svn: 184794

11 years agoRemove all non-linker oriented compile options from the linker
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

11 years ago80-column and tab character fixes.
Eric Christopher [Mon, 24 Jun 2013 23:20:02 +0000 (23:20 +0000)]
80-column and tab character fixes.

llvm-svn: 184792

11 years agoCheck for matching template-parameter-lists when merging template declarations.
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

11 years agoAccept both / and \\ to fix the windows bots.
Rafael Espindola [Mon, 24 Jun 2013 22:07:15 +0000 (22:07 +0000)]
Accept both / and \\ to fix the windows bots.

llvm-svn: 184790

11 years agoTweak -Wdeprecated-objc-pointer-introspection to have a subgroup for results of using...
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

11 years agoFormatting.
Eric Christopher [Mon, 24 Jun 2013 21:34:55 +0000 (21:34 +0000)]
Formatting.

llvm-svn: 184788

11 years agoAdded arm_neon intrinsic tests.
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

11 years ago[NeonIntrinsicTestEmitter] vld1/vst1 do not require the :64 hint.
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

11 years ago[NeonIntrinsicTestEmitter] Fix incorrect FileCheck pattern where we were expecting...
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

11 years ago[NeonIntrinsicTestEmitter] Add requirement to arm neon intrinsic tests for the featur...
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

11 years agotypo.
Adrian Prantl [Mon, 24 Jun 2013 21:19:43 +0000 (21:19 +0000)]
typo.

llvm-svn: 184783

11 years ago[libclang/codecompletion] Make sure the top-level decl hash takes into account Import...
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

11 years agoUse const references instead of pointers to references that are
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

11 years agoChange mangling of objects inside block literals.
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

11 years agoFix "funciton" typo from r184763
Reid Kleckner [Mon, 24 Jun 2013 20:08:40 +0000 (20:08 +0000)]
Fix "funciton" typo from r184763

llvm-svn: 184779

11 years agoDirect dir to target.source-map.
Jim Ingham [Mon, 24 Jun 2013 19:37:49 +0000 (19:37 +0000)]
Direct dir to target.source-map.

llvm-svn: 184778

11 years ago[ms-cxxabi] Use sugared types in the mangler instead of canonical types
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

11 years ago[arcmt/driver] For the -ccc-arcmt-* flags, claim them when -fno-objc-arc is passed...
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

11 years agoUse getAs<> where appropriate on QualTypes instead of using dyn_cast.
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

11 years agoConvert some uses of llvm::sys::Path.
Rafael Espindola [Mon, 24 Jun 2013 18:33:43 +0000 (18:33 +0000)]
Convert some uses of llvm::sys::Path.

llvm-svn: 184774

11 years agoUse the simpler version of llvm::sys::fs::exists.
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

11 years ago<rdar://problem/14182286>
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

11 years ago[analyzer] Add a debug checker that prints Exploded Graph
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

11 years ago[PowerPC] Support some miscellaneous mnemonics in the asm parser
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

11 years agoConvert last use of PathV1.h in Compilation.cpp
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

11 years agoWe set the error when a breakpoint condition
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

11 years agoAdd a simpler version of is_regular_file.
Rafael Espindola [Mon, 24 Jun 2013 17:54:24 +0000 (17:54 +0000)]
Add a simpler version of is_regular_file.

llvm-svn: 184764

11 years ago[AST] Introduce a new DecayedType sugar node
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

11 years agoAdd the global namespace (the "::" namespace specifier) to the list of
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

11 years agoDebugInfo: DIBuilder changes to match DIEnumerator changes in r184694
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

11 years agoImprove diagnostics when getSizeInBits is called on the Other type.
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

11 years agoImplement full support for non-pointer pointers in custom allocators for forward_list.
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

11 years agoPPC: Remove default case from fully covered switch.
Benjamin Kramer [Mon, 24 Jun 2013 17:03:25 +0000 (17:03 +0000)]
PPC: Remove default case from fully covered switch.

llvm-svn: 184758

11 years ago[PowerPC] Add some FIXMEs
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

11 years agoR600: Fix spelling error in comment
Aaron Watry [Mon, 24 Jun 2013 16:57:57 +0000 (16:57 +0000)]
R600: Fix spelling error in comment

our -> or

llvm-svn: 184756

11 years agoCheck the canonical parameter type with getAs<>() in a static checker
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

11 years ago[PowerPC] Add predicted forms of branches
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

11 years agoConvert a use of PathV1.h
Rafael Espindola [Mon, 24 Jun 2013 16:46:15 +0000 (16:46 +0000)]
Convert a use of PathV1.h

llvm-svn: 184753

11 years agotsan: make the test more robust
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

11 years agoAdd some invalid-decl checks to clang_Type_getOffsetOf.
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

11 years agoMove llvm/test/DebugInfo/arguments.ll to X86, for now. It is still Windows' PECOFF...
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

11 years agoRename the variable to fix a warning. Thanks Andy Gibbs.
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

11 years agoTests require GNU make, called gmake on FreeBSD
Ed Maste [Mon, 24 Jun 2013 15:40:27 +0000 (15:40 +0000)]
Tests require GNU make, called gmake on FreeBSD

llvm-svn: 184748

11 years agotsan: update dynamic export syms file
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

11 years agoSync FreeBSD files to Linux equivalents, to reduce noise in diff
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

11 years agoUpdate comment to match class name
Ed Maste [Mon, 24 Jun 2013 15:04:47 +0000 (15:04 +0000)]
Update comment to match class name

llvm-svn: 184745

11 years agoUse canonical termios.h location
Ed Maste [Mon, 24 Jun 2013 15:03:16 +0000 (15:03 +0000)]
Use canonical termios.h location

llvm-svn: 184744

11 years agoConvert a use of PathV1.h.
Rafael Espindola [Mon, 24 Jun 2013 15:00:11 +0000 (15:00 +0000)]
Convert a use of PathV1.h.

llvm-svn: 184743

11 years agoEliminate missing virtual destructor warning on FreeBSD
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

11 years agoUpdate for Linux->POSIX rename
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

11 years ago[Sema] Call CheckParmForFunctionDef on ObjC method parameters
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

11 years ago[sanitizer] Intercept sysinfo.
Evgeniy Stepanov [Mon, 24 Jun 2013 14:25:33 +0000 (14:25 +0000)]
[sanitizer] Intercept sysinfo.

llvm-svn: 184739

11 years agoUsing offsetof to an item within an array is an extension so mark it as such to avoid...
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

11 years agoFix some more mismatched integer types causing compiler warnings.
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

11 years ago[sanitizer] Fix TSan build.
Evgeniy Stepanov [Mon, 24 Jun 2013 14:03:13 +0000 (14:03 +0000)]
[sanitizer] Fix TSan build.

llvm-svn: 184736

11 years ago[sanitizer] Intercept inet_aton.
Evgeniy Stepanov [Mon, 24 Jun 2013 13:56:14 +0000 (13:56 +0000)]
[sanitizer] Intercept inet_aton.

llvm-svn: 184735

11 years ago[msan] Unpoison param-tls in signal handler wrapper.
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

11 years agoRemove comment that is no longer applicable
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

11 years agoLook for Python 2 before Python 3 in CMakeLists.txt
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

11 years agollvm/test/CodeGen/X86: Add explicit -mtriple=x86_64-unknown-unknown.
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

11 years agollvm/test/CodeGen/X86/legalize-shift-64.ll: Add explicit -mtriple=i686-unknown-unknown.
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

11 years agollvm/test/DebugInfo/arguments.ll: Add explicit -mtriple=x86_64-unknown-unknown.
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

11 years agoNVPTXTargetObjectFile.h: Initialize some pointers as NULL in the constructor of NVPTX...
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

11 years agoclang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp: Suppress unexpected failures...
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

11 years agoclang/test/Driver/coverage-ld.c: Tweak expressions to match dosish pathsep on win32...
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

11 years ago[PowerPC] Add t/f branch mnemonics to asm parser
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

11 years agoReapply 184685 after the SetVector iteration order fix.
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

11 years agoLoopVectorize: Use SetVector for the access set
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

11 years ago[PowerPC] Support generic conditional branches in asm parser
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

11 years ago[PowerPC] Support absolute branches
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

11 years ago[PowerPC] Support bd(n)zl and bd(n)zlrl
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

11 years ago[PowerPC] Support b(cond)l in the asm parser
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

11 years ago[PowerPC] Support blrl and variants in the asm parser
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

11 years ago[sanitizer] Intercept readv, preadv, writev, pwritev.
Evgeniy Stepanov [Mon, 24 Jun 2013 10:43:23 +0000 (10:43 +0000)]
[sanitizer] Intercept readv, preadv, writev, pwritev.

llvm-svn: 184717