platform/upstream/llvm.git
10 years ago[Mips] Add ABI and ARCH flags to the object files.
Simon Atanasyan [Thu, 30 Oct 2014 21:20:27 +0000 (21:20 +0000)]
[Mips] Add ABI and ARCH flags to the object files.

No functional changes.

llvm-svn: 220931

10 years agoRefactor tree printing in AST dumping.
Richard Smith [Thu, 30 Oct 2014 21:02:37 +0000 (21:02 +0000)]
Refactor tree printing in AST dumping.

Instead of manually maintaining a flag indicating whether we're about to print
out the last child of the parent node (to determine whether we print "`" or
"|"), capture a callable to print that child and defer printing it until we
either see a next child or finish the parent.

No functionality change intended.

llvm-svn: 220930

10 years agollvm-cov: Follow LLVM naming conventions
Justin Bogner [Thu, 30 Oct 2014 20:57:49 +0000 (20:57 +0000)]
llvm-cov: Follow LLVM naming conventions

This renames a few things that are using an unusual naming convention.

llvm-svn: 220929

10 years agollvm-cov: Don't manually parse an option for no reason
Justin Bogner [Thu, 30 Oct 2014 20:51:24 +0000 (20:51 +0000)]
llvm-cov: Don't manually parse an option for no reason

We're using cl::opt here, but for some reason we're reading out one
particular option by hand instead. This makes -help and the like
behave rather poorly, so let's not do it this way.

llvm-svn: 220928

10 years agoFix the merging of the constantness of declarations.
Rafael Espindola [Thu, 30 Oct 2014 20:50:23 +0000 (20:50 +0000)]
Fix the merging of the constantness of declarations.

The langref says:

LLVM explicitly allows declarations of global variables to be marked
constant, even if the final definition of the global is not. This
capability can be used to enable slightly better optimization of the
program, but requires the language definition to guarantee that
optimizations based on the ‘constantness’ are valid for the
translation units that do not include the definition.

Given that definition, when merging two declarations, we have to drop
constantness if of of them is not marked contant, since the Module
without the constant marker might not have the necessary guarantees.

llvm-svn: 220927

10 years agollvm-cov: Very basic top level help
Justin Bogner [Thu, 30 Oct 2014 20:29:48 +0000 (20:29 +0000)]
llvm-cov: Very basic top level help

llvm-svn: 220926

10 years agoAdd handling for range metadata in ValueTracking isKnownNonZero
Philip Reames [Thu, 30 Oct 2014 20:25:19 +0000 (20:25 +0000)]
Add handling for range metadata in ValueTracking isKnownNonZero

If we load from a location with range metadata, we can use information about the ranges of the loaded value for optimization purposes.  This helps to remove redundant checks and canonicalize checks for other optimization passes.  This particular patch checks whether a value is known to be non-zero from the range metadata.

Currently, these tests are against InstCombine.  In theory, all of these should be InstSimplify since we're not inserting any new instructions.  Moving the code may follow in a separate change.

Reviewed by: Hal
Differential Revision: http://reviews.llvm.org/D5947

llvm-svn: 220925

10 years agoUpdate test to pass .ll to llvm-link and use Inputs.
Rafael Espindola [Thu, 30 Oct 2014 20:23:59 +0000 (20:23 +0000)]
Update test to pass .ll to llvm-link and use Inputs.

llvm-svn: 220924

10 years agoPR21408: Workaround the appearance of duplicate variables due to problems when inlini...
David Blaikie [Thu, 30 Oct 2014 20:20:11 +0000 (20:20 +0000)]
PR21408: Workaround the appearance of duplicate variables due to problems when inlining two calls to the same function from the same call site.

llvm-svn: 220923

10 years agoFix comment spelling and tidy diagnostic call in profile reader.
Diego Novillo [Thu, 30 Oct 2014 20:19:19 +0000 (20:19 +0000)]
Fix comment spelling and tidy diagnostic call in profile reader.

No functional changes.

llvm-svn: 220922

10 years agoRemove #include <codecvt>. It isn't supported on all compilers.
Zachary Turner [Thu, 30 Oct 2014 19:42:08 +0000 (19:42 +0000)]
Remove #include <codecvt>.  It isn't supported on all compilers.

Also it wasn't being used anyway, so it appears to be a dead include.

llvm-svn: 220921

10 years agoGet rid of SanitizerOptions::Disabled global. NFC.
Alexey Samsonov [Thu, 30 Oct 2014 19:33:44 +0000 (19:33 +0000)]
Get rid of SanitizerOptions::Disabled global. NFC.

SanitizerOptions is not even a POD now, so having global variable of
this type, is not nice. Instead, provide a regular constructor and clear()
method, and let each CodeGenFunction has its own copy of SanitizerOptions
it uses.

llvm-svn: 220920

10 years agolit: PR21417: don't try to update OCAMLPATH if LibDir is empty.
Peter Zotov [Thu, 30 Oct 2014 19:26:42 +0000 (19:26 +0000)]
lit: PR21417: don't try to update OCAMLPATH if LibDir is empty.

llvm-svn: 220919

10 years agoFix Twine corruption problem with diagnostics.
Diego Novillo [Thu, 30 Oct 2014 18:48:41 +0000 (18:48 +0000)]
Fix Twine corruption problem with diagnostics.

This fixes the autobuilders I broke with a recent patch. Thanks echristo
and dblaikie for beating me with a clue stick.

llvm-svn: 220918

10 years agoAlso port the C string reading code in ValueObject over to using StringPrinter API
Enrico Granata [Thu, 30 Oct 2014 18:27:31 +0000 (18:27 +0000)]
Also port the C string reading code in ValueObject over to using StringPrinter API

llvm-svn: 220917

10 years ago[mach-o] use the addend in GOT-based relocations.
Tim Northover [Thu, 30 Oct 2014 18:01:07 +0000 (18:01 +0000)]
[mach-o] use the addend in GOT-based relocations.

These are used to reference typeinfo data in the exception table section, for
example.

llvm-svn: 220916

10 years agoAdd profile writing capabilities for sampling profiles.
Diego Novillo [Thu, 30 Oct 2014 18:00:06 +0000 (18:00 +0000)]
Add profile writing capabilities for sampling profiles.

Summary:
This patch finishes up support for handling sampling profiles in both
text and binary formats. The new binary format uses uleb128 encoding to
represent numeric values. This makes profiles files about 25% smaller.

The profile writer class can write profiles in the existing text and the
new binary format. In subsequent patches, I will add the capability to
read (and perhaps write) profiles in the gcov format used by GCC.

Additionally, I will be adding support in llvm-profdata to manipulate
sampling profiles.

There was a bit of refactoring needed to separate some code that was in
the reader files, but is actually common to both the reader and writer.

The new test checks that reading the same profile encoded as text or
raw, produces the same results.

Reviewers: bogner, dexonsmith

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D6000

llvm-svn: 220915

10 years agoRemove hex character number from wchar_t test
Ed Maste [Thu, 30 Oct 2014 17:41:11 +0000 (17:41 +0000)]
Remove hex character number from wchar_t test

After r220894 (StringPrinter change) it is no longer emitted. Update the
test rather than considering it a bug as the new format is preferred.

llvm-svn: 220914

10 years agoARM: test default values for TAG_CPU_unaligned_access attribute.
Tim Northover [Thu, 30 Oct 2014 17:05:44 +0000 (17:05 +0000)]
ARM: test default values for TAG_CPU_unaligned_access attribute.

It should be on for every target that supports unaligned accesses (e.g. not
v6m).

Patch by Charlie Turner.

llvm-svn: 220912

10 years ago[analyzer] Updated tests for ZeroAllocDereference checker.
Anton Yartsev [Thu, 30 Oct 2014 15:16:26 +0000 (15:16 +0000)]
[analyzer] Updated tests for ZeroAllocDereference checker.

llvm-svn: 220911

10 years ago[Mips] Add new Mips specific e_flags.
Simon Atanasyan [Thu, 30 Oct 2014 14:56:02 +0000 (14:56 +0000)]
[Mips] Add new Mips specific e_flags.

No functional changes.

llvm-svn: 220910

10 years agoFix CMake build, adding StringPrinter.cpp from r220894
Ed Maste [Thu, 30 Oct 2014 14:50:42 +0000 (14:50 +0000)]
Fix CMake build, adding StringPrinter.cpp from r220894

llvm-svn: 220909

10 years ago[AVX512] Added VBROADCAST{SS/SD} encoding for VL subset.
Robert Khasanov [Thu, 30 Oct 2014 14:21:47 +0000 (14:21 +0000)]
[AVX512] Added VBROADCAST{SS/SD} encoding for VL subset.
Refactored through AVX512_maskable

llvm-svn: 220908

10 years agoUpdate __dfsw_s{,n}printf custom functions for new calling convention.
Peter Collingbourne [Thu, 30 Oct 2014 13:23:01 +0000 (13:23 +0000)]
Update __dfsw_s{,n}printf custom functions for new calling convention.

Differential Revision: http://reviews.llvm.org/D6029

llvm-svn: 220907

10 years ago[dfsan] New calling convention for custom functions with variadic arguments.
Peter Collingbourne [Thu, 30 Oct 2014 13:22:57 +0000 (13:22 +0000)]
[dfsan] New calling convention for custom functions with variadic arguments.

Summary:
The previous calling convention prevented custom functions from being able
to access argument labels unless it knew how many variadic arguments there
were, and of which type. This restriction made it impossible to correctly
model functions in the printf family, as it is legal to pass more arguments
than required to those functions. We now pass arguments in the following order:

non-vararg arguments
labels for non-vararg arguments
[if vararg function, pointer to array of labels for vararg arguments]
[if non-void function, pointer to label for return value]
vararg arguments

Differential Revision: http://reviews.llvm.org/D6028

llvm-svn: 220906

10 years agoUpdate contact person in Open Projects webpage for copy-paste detection. From Per...
Daniel Marjamaki [Thu, 30 Oct 2014 12:44:33 +0000 (12:44 +0000)]
Update contact person in Open Projects webpage for copy-paste detection. From Per Viberg to Daniel Marjamäki.

llvm-svn: 220905

10 years ago[autoconf] Add clangToolingCore.a to Makefile(s) for static build w/o libclang.dll.
NAKAMURA Takumi [Thu, 30 Oct 2014 10:31:29 +0000 (10:31 +0000)]
[autoconf] Add clangToolingCore.a to Makefile(s) for static build w/o libclang.dll.

llvm-svn: 220904

10 years ago[OCaml] Expose LLVMCloneModule.
Peter Zotov [Thu, 30 Oct 2014 08:30:12 +0000 (08:30 +0000)]
[OCaml] Expose LLVMCloneModule.

llvm-svn: 220903

10 years ago[OCaml] Expose LLVM{Get,Set}DLLStorageClass.
Peter Zotov [Thu, 30 Oct 2014 08:30:08 +0000 (08:30 +0000)]
[OCaml] Expose LLVM{Get,Set}DLLStorageClass.

llvm-svn: 220902

10 years ago[OCaml] Test code emission in Llvm_target.
Peter Zotov [Thu, 30 Oct 2014 08:30:01 +0000 (08:30 +0000)]
[OCaml] Test code emission in Llvm_target.

Prior to this commit, the Llvm_target tests (ab)used
the Llvm_executionengine as a mechanism to initialize at least some
target. This needlessly restricted tests to builds which can emit
code for their host architecture.

llvm-svn: 220901

10 years ago[OCaml] Enable backtraces in tests.
Peter Zotov [Thu, 30 Oct 2014 08:29:57 +0000 (08:29 +0000)]
[OCaml] Enable backtraces in tests.

llvm-svn: 220900

10 years ago[OCaml] [autoconf] Migrate to ocamlfind.
Peter Zotov [Thu, 30 Oct 2014 08:29:45 +0000 (08:29 +0000)]
[OCaml] [autoconf] Migrate to ocamlfind.

This commit updates the OCaml bindings and tests to use ocamlfind.
The bindings are migrated in order to use ctypes, which are now
required for MCJIT-backed Llvm_executionengine.
The tests are migrated in order to use OUnit and to verify that
the distributed META.llvm allows to build working executables.

Every OCaml toolchain invocation is now chained through ocamlfind,
which (in theory) allows to cross-compile the OCaml bindings.

The configure script now checks for ctypes (>= 0.2.3) and
OUnit (>= 2). The code depending on these libraries will be added
later. The configure script does not check the package versions
in order to keep changes less invasive.

Additionally, OCaml bindings will now be automatically enabled
if ocamlfind is detected on the system, rather than ocamlc, as it
was before.

llvm-svn: 220899

10 years ago[OCaml] De-duplicate llvm_raise and llvm_string_of_message.
Peter Zotov [Thu, 30 Oct 2014 08:29:29 +0000 (08:29 +0000)]
[OCaml] De-duplicate llvm_raise and llvm_string_of_message.

llvm-svn: 220898

10 years agoRemove the last couple uses of the ExprArg(just Expr*) typedef in Parser.
Craig Topper [Thu, 30 Oct 2014 05:30:05 +0000 (05:30 +0000)]
Remove the last couple uses of the ExprArg(just Expr*) typedef in Parser.

llvm-svn: 220897

10 years agoRemove some duplicate functions from the Parser class. Identical functions already...
Craig Topper [Thu, 30 Oct 2014 05:17:10 +0000 (05:17 +0000)]
Remove some duplicate functions from the Parser class. Identical functions already exist in the clang namespace from Sema/Ownership.h.

llvm-svn: 220896

10 years ago[CMake] clangApplyReplacement: Add clangAST in libdeps to appease msc builder.
NAKAMURA Takumi [Thu, 30 Oct 2014 03:22:32 +0000 (03:22 +0000)]
[CMake] clangApplyReplacement: Add clangAST in libdeps to appease msc builder.

  clangApplyReplacements.lib(ApplyReplacements.cpp.obj) : error LNK2001: unresolved external symbol "private: void __thiscall clang::APValue::DestroyDataAndMakeUninit(void)" (?DestroyDataAndMakeUninit@APValue@clang@@AAEXXZ)

They are not seen in mingw dll build. Investigating.

llvm-svn: 220895

10 years agoStart adopting the StringPrinter API. The StringPrinter API is the new blessed way...
Enrico Granata [Thu, 30 Oct 2014 01:45:39 +0000 (01:45 +0000)]
Start adopting the StringPrinter API. The StringPrinter API is the new blessed way of printing strings that supports escaping non-printables, and has better handling of different UTF encodings

llvm-svn: 220894

10 years ago[CMake] Prune redundant libdeps.
NAKAMURA Takumi [Thu, 30 Oct 2014 01:37:44 +0000 (01:37 +0000)]
[CMake] Prune redundant libdeps.

llvm-svn: 220893

10 years agoRemove unused service plist.
Jason Molenda [Thu, 30 Oct 2014 01:04:59 +0000 (01:04 +0000)]
Remove unused service plist.

llvm-svn: 220892

10 years agoAdd the ability for a ClangASTType to be marked as 'packed' when constructed
Enrico Granata [Thu, 30 Oct 2014 00:53:28 +0000 (00:53 +0000)]
Add the ability for a ClangASTType to be marked as 'packed' when constructed

llvm-svn: 220891

10 years ago[CMake] Add dependencies on clangToolingCore.
NAKAMURA Takumi [Thu, 30 Oct 2014 00:44:01 +0000 (00:44 +0000)]
[CMake] Add dependencies on clangToolingCore.

llvm-svn: 220890

10 years ago[CMake] clangToolingCore requires clangLex.
NAKAMURA Takumi [Thu, 30 Oct 2014 00:43:44 +0000 (00:43 +0000)]
[CMake] clangToolingCore requires clangLex.

llvm-svn: 220889

10 years ago[CMake] Reformat.
NAKAMURA Takumi [Thu, 30 Oct 2014 00:43:33 +0000 (00:43 +0000)]
[CMake] Reformat.

llvm-svn: 220888

10 years agoEnable the slp vectorizer in the gold plugin.
Rafael Espindola [Thu, 30 Oct 2014 00:38:54 +0000 (00:38 +0000)]
Enable the slp vectorizer in the gold plugin.

llvm-svn: 220887

10 years agoEnable the loop vectorizer in the gold plugin.
Rafael Espindola [Thu, 30 Oct 2014 00:11:24 +0000 (00:11 +0000)]
Enable the loop vectorizer in the gold plugin.

llvm-svn: 220886

10 years agoReplace also-emit-llvm with save-temps.
Rafael Espindola [Wed, 29 Oct 2014 23:54:45 +0000 (23:54 +0000)]
Replace also-emit-llvm with save-temps.

The also-emit-llvm option only supported getting the IR before optimizations.
This patch replaces it with a more generic save-temps option that saves the IR
both before and after optimizations.

llvm-svn: 220885

10 years agoUntabify.
NAKAMURA Takumi [Wed, 29 Oct 2014 23:44:35 +0000 (23:44 +0000)]
Untabify.

llvm-svn: 220884

10 years agoclang-format: Format line if invoked on the trailing newline.
Daniel Jasper [Wed, 29 Oct 2014 23:40:50 +0000 (23:40 +0000)]
clang-format: Format line if invoked on the trailing newline.

llvm-svn: 220883

10 years agolibcxxrt now implements bad_array_new_length and need to gaurd against multiple defin...
Eric Fiselier [Wed, 29 Oct 2014 23:14:53 +0000 (23:14 +0000)]
libcxxrt now implements bad_array_new_length and need to gaurd against multiple defines. Patch from Baptiste Daroussin.

llvm-svn: 220882

10 years agoFix the NSPathStore2 data formatter to actually handle the explicit length stored...
Enrico Granata [Wed, 29 Oct 2014 23:08:02 +0000 (23:08 +0000)]
Fix the NSPathStore2 data formatter to actually handle the explicit length stored inside the object. The meat of this commit, however, is a nice little API for easily adding new __lldb_autogen_ helper types to an AST context

llvm-svn: 220881

10 years agollvm/test/Transforms/LoopRotate/nosimplifylatch.ll: Fix possibly mis-repeatedly-paste...
NAKAMURA Takumi [Wed, 29 Oct 2014 23:05:12 +0000 (23:05 +0000)]
llvm/test/Transforms/LoopRotate/nosimplifylatch.ll: Fix possibly mis-repeatedly-pasted test.

llvm-svn: 220880

10 years agoSink a #include while we're here. NFC.
Hans Wennborg [Wed, 29 Oct 2014 22:49:58 +0000 (22:49 +0000)]
Sink a #include while we're here. NFC.

Format.h doesn't use stack.

llvm-svn: 220879

10 years agoclang-format: Cut more clangAST dependencies.
Daniel Jasper [Wed, 29 Oct 2014 22:42:53 +0000 (22:42 +0000)]
clang-format: Cut more clangAST dependencies.

Hopefully fixing windows builds.

llvm-svn: 220878

10 years agoTrim some includes. NFC.
Hans Wennborg [Wed, 29 Oct 2014 22:13:46 +0000 (22:13 +0000)]
Trim some includes. NFC.

llvm-svn: 220877

10 years agoDelete some unnecessary code
Tobias Grosser [Wed, 29 Oct 2014 22:09:54 +0000 (22:09 +0000)]
Delete some unnecessary code

Originally we have needed this code to map the isl_id of an array to its base
pointer. However, as now the isl_id contains a reference to the array itself we
obtain the base pointer from this isl_id and we do not need to add this
information to the IDToValue map.

llvm-svn: 220876

10 years agoRun clang-format on tools/llvm-objdump/MachODump.cpp . No functional change.
Kevin Enderby [Wed, 29 Oct 2014 21:28:24 +0000 (21:28 +0000)]
Run clang-format on tools/llvm-objdump/MachODump.cpp . No functional change.

llvm-svn: 220875

10 years agoFollow-up to r216619: use isCXXCLassMember() instead of trying to
Hans Wennborg [Wed, 29 Oct 2014 21:20:57 +0000 (21:20 +0000)]
Follow-up to r216619: use isCXXCLassMember() instead of trying to
check the context ourselves when selectively allowing late-added
dll attributes on unused free functions and variables (PR20746)

llvm-svn: 220874

10 years agoTest Case for r220872:Do not simplifyLatch for loops where hoisting increments couldr...
Yi Jiang [Wed, 29 Oct 2014 20:20:33 +0000 (20:20 +0000)]
Test Case for r220872:Do not simplifyLatch for loops where hoisting increments couldresult in extra live range interferance

llvm-svn: 220873

10 years agoDo not simplifyLatch for loops where hoisting increments couldresult in extra live...
Yi Jiang [Wed, 29 Oct 2014 20:19:47 +0000 (20:19 +0000)]
Do not simplifyLatch for loops where hoisting increments couldresult in extra live range interferance

llvm-svn: 220872

10 years agoTemporarily disable test on FreeBSD that is asserting
Ed Maste [Wed, 29 Oct 2014 20:02:54 +0000 (20:02 +0000)]
Temporarily disable test on FreeBSD that is asserting

llvm.org/pr21325

llvm-svn: 220871

10 years agoFix typo
Tobias Grosser [Wed, 29 Oct 2014 19:58:28 +0000 (19:58 +0000)]
Fix typo

llvm-svn: 220870

10 years agoReverting r220517; it seems this broke check-asan.
Aaron Ballman [Wed, 29 Oct 2014 19:25:20 +0000 (19:25 +0000)]
Reverting r220517; it seems this broke check-asan.

llvm-svn: 220869

10 years agoFix Makefiles after r220867.
Daniel Jasper [Wed, 29 Oct 2014 18:55:41 +0000 (18:55 +0000)]
Fix Makefiles after r220867.

llvm-svn: 220868

10 years agoRefactor libTooling to reduce required dependencies.
Daniel Jasper [Wed, 29 Oct 2014 18:55:09 +0000 (18:55 +0000)]
Refactor libTooling to reduce required dependencies.

This moves classes for storing and applying replacements to separate
files. These classes specifically are used by clang-format which doesn't
have any other dependencies on clangAST. Thereby, the size of
clang-format's binary can be cut roughly in half and its build time sped
up.

llvm-svn: 220867

10 years agoFix getRelocationValueString to return the symbol name for EM_386.
Jan Wen Voung [Wed, 29 Oct 2014 18:37:13 +0000 (18:37 +0000)]
Fix getRelocationValueString to return the symbol name for EM_386.

Summary: This helps llvm-objdump -r to print out the symbol name along
with the relocation type on x86. Adjust existing tests from checking
for "Unknown" to check for the symbol now.

Test Plan: Adjusted test/Object tests.

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D5987

llvm-svn: 220866

10 years agoShrink the set of checks enabled by default.
Alexander Kornienko [Wed, 29 Oct 2014 18:25:09 +0000 (18:25 +0000)]
Shrink the set of checks enabled by default.

Summary:
Enable only compiler diagnostics and safe static analyzer checks by
default. Let the defaults be conservative and safe for an average project.

Reviewers: djasper

Reviewed By: djasper

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D6027

llvm-svn: 220865

10 years agoEnable display of compiler diagnostics in clang-tidy by default.
Alexander Kornienko [Wed, 29 Oct 2014 17:29:38 +0000 (17:29 +0000)]
Enable display of compiler diagnostics in clang-tidy by default.

llvm-svn: 220863

10 years agoEnable display of compiler diagnostics in clang-tidy.
Alexander Kornienko [Wed, 29 Oct 2014 17:28:51 +0000 (17:28 +0000)]
Enable display of compiler diagnostics in clang-tidy.

llvm-svn: 220862

10 years agotest: generalise the test matching
Saleem Abdulrasool [Wed, 29 Oct 2014 16:53:16 +0000 (16:53 +0000)]
test: generalise the test matching

The value names may change in different builds, use pattern based tests.

llvm-svn: 220861

10 years agoclang-format: [JS] Support more regex literals.
Daniel Jasper [Wed, 29 Oct 2014 16:51:38 +0000 (16:51 +0000)]
clang-format: [JS] Support more regex literals.

Previously a regex-literal containing "/*" would through clang-format
off, e.g.:
  var regex = /\/*$/;

Would lead to none of the following code to be formatted.

llvm-svn: 220860

10 years agoCodeGen: add __readfsdword builtin
Saleem Abdulrasool [Wed, 29 Oct 2014 16:35:41 +0000 (16:35 +0000)]
CodeGen: add __readfsdword builtin

The Windows NT SDK uses __readfsdword and declares it as a compiler provided
builtin (#pragma intrinsic(__readfsword).  Because intrin.h is not referenced
by winnt.h, it is not possible to provide an out-of-line definition for the
intrinsic.  Provide a proper compiler builtin definition.

llvm-svn: 220859

10 years ago[AVX512] Implemented AVX512VL FP bnary packed instructions (VADDP*, VSUBP*, VMULP...
Robert Khasanov [Wed, 29 Oct 2014 15:43:02 +0000 (15:43 +0000)]
[AVX512] Implemented AVX512VL FP bnary packed instructions (VADDP*, VSUBP*, VMULP*, VDIVP*, VMAXP*, VMINP*)
Refactored through AVX512_maskable
Added encoding tests for them.

llvm-svn: 220858

10 years agoWhitespace.
NAKAMURA Takumi [Wed, 29 Oct 2014 15:23:11 +0000 (15:23 +0000)]
Whitespace.

llvm-svn: 220857

10 years agoSkip test that's hanging on FreeBSD until it can be investigated
Ed Maste [Wed, 29 Oct 2014 15:09:27 +0000 (15:09 +0000)]
Skip test that's hanging on FreeBSD until it can be investigated

llvm.org/pr21411

llvm-svn: 220856

10 years agoFix warning in Altivec code when building with GCC 4.8.2 on Ubuntu 14.04.
Jay Foad [Wed, 29 Oct 2014 14:42:12 +0000 (14:42 +0000)]
Fix warning in Altivec code when building with GCC 4.8.2 on Ubuntu 14.04.

llvm-svn: 220855

10 years agoPass aggregates on the stack without splitting in NVPTX.
Eli Bendersky [Wed, 29 Oct 2014 13:43:21 +0000 (13:43 +0000)]
Pass aggregates on the stack without splitting in NVPTX.

Following the NVVM IR specifications, arguments of aggregate type should be
passed on the stack without splitting (byval).

http://reviews.llvm.org/D6020

Patch by Jacques Pienaar.

llvm-svn: 220854

10 years agoclang/lib/AST/Decl.cpp: Tweak isVLATypeCapturingAllowed() for -Asserts. [-Wunused...
NAKAMURA Takumi [Wed, 29 Oct 2014 13:27:44 +0000 (13:27 +0000)]
clang/lib/AST/Decl.cpp: Tweak isVLATypeCapturingAllowed() for -Asserts. [-Wunused-function]

llvm-svn: 220853

10 years ago[PowerPC ABI] Bug 21398 - Consider C++ base classes in HA classification
Ulrich Weigand [Wed, 29 Oct 2014 13:23:20 +0000 (13:23 +0000)]
[PowerPC ABI] Bug 21398 - Consider C++ base classes in HA classification

As discussed in bug 21398, PowerPC ABI code needs to consider C++ base
classes when classifying a class as homogeneous aggregate (or not) for
ABI purposes.

llvm-svn: 220852

10 years agoclang/test/CodeGen/captured-statements-nested.c: Tweak for -Asserts.
NAKAMURA Takumi [Wed, 29 Oct 2014 13:21:52 +0000 (13:21 +0000)]
clang/test/CodeGen/captured-statements-nested.c: Tweak for -Asserts.

llvm-svn: 220851

10 years agoImproved capturing variable-length array types in CapturedStmt.
Alexey Bataev [Wed, 29 Oct 2014 12:21:55 +0000 (12:21 +0000)]
Improved capturing variable-length array types in CapturedStmt.
An updated implemnentation of VLA types capturing based on previously committed solution for Lambdas.
This version captures the whole VLA type instead of particular variables which are part of VLA size expression and allows to use previusly calculated size of VLA type in captured regions. Required for OpenMP.
Differential Revision: http://reviews.llvm.org/D5099

llvm-svn: 220850

10 years agoUse enumerators instead of hardcoded integers when we decide if keyword is enabled.
Serge Pavlov [Wed, 29 Oct 2014 10:59:18 +0000 (10:59 +0000)]
Use enumerators instead of hardcoded integers when we decide if keyword is enabled.

llvm-svn: 220849

10 years agoFix build with CMake if LLVM_USE_INTEL_JITEVENTS option is enabled
Michael Kuperstein [Wed, 29 Oct 2014 09:18:49 +0000 (09:18 +0000)]
Fix build with CMake if LLVM_USE_INTEL_JITEVENTS option is enabled

* Added LLVM libraries required for IntelJITEvents to LLVMBuild.txt.
* Removed 'jit' library from llvm-jitlistener.
* Added support for OptionalLibraries to llvm-build cmake files generator.

Patch by aleksey.a.bader@intel.com

Differential Revision: http://reviews.llvm.org/D5646

llvm-svn: 220848

10 years ago[OCaml] Expose Llvm.parse_command_line_options.
Peter Zotov [Wed, 29 Oct 2014 08:16:18 +0000 (08:16 +0000)]
[OCaml] Expose Llvm.parse_command_line_options.

llvm-svn: 220847

10 years ago[OCaml] Expose Llvm_target.TargetMachine.add_analysis_passes.
Peter Zotov [Wed, 29 Oct 2014 08:16:14 +0000 (08:16 +0000)]
[OCaml] Expose Llvm_target.TargetMachine.add_analysis_passes.

llvm-svn: 220846

10 years ago[OCaml] If compiled without --enable-shared, hide packages from toplevel.
Peter Zotov [Wed, 29 Oct 2014 08:16:06 +0000 (08:16 +0000)]
[OCaml] If compiled without --enable-shared, hide packages from toplevel.

Pretend they do not exist using exists_if. This is better than
the current situation, which is the error:

    Error: The external function `llvm_global_succ' is not available

but still somewhat confusing.

llvm-svn: 220845

10 years ago[OCaml] Expose Llvm_bitwriter.write_bitcode_to_memory_buffer.
Peter Zotov [Wed, 29 Oct 2014 08:16:01 +0000 (08:16 +0000)]
[OCaml] Expose Llvm_bitwriter.write_bitcode_to_memory_buffer.

llvm-svn: 220844

10 years ago[OCaml] Drop support for 3.12.1 and earlier.
Peter Zotov [Wed, 29 Oct 2014 08:15:54 +0000 (08:15 +0000)]
[OCaml] Drop support for 3.12.1 and earlier.

In practice this means:
  * Always using -g flag.
  * Embedding -cclib -lstdc++ into the corresponding cma/cmxa file.
    This also moves -lstdc++ in a single place.
  * Using caml_named_value instead of a homegrown mechanism.

llvm-svn: 220843

10 years ago[OCaml] Synchronize transformations with LLVM-C.
Peter Zotov [Wed, 29 Oct 2014 08:15:21 +0000 (08:15 +0000)]
[OCaml] Synchronize transformations with LLVM-C.

Also, rearrange the functions in a way that allows to quickly
compare C headers and .mli/glue files.

llvm-svn: 220842

10 years agoDon't capture DeclRefExpr::getNameInfo().getInfo(). It returns reference in temporary...
NAKAMURA Takumi [Wed, 29 Oct 2014 08:11:47 +0000 (08:11 +0000)]
Don't capture DeclRefExpr::getNameInfo().getInfo(). It returns reference in temporary object.

DeclarationNameInfo::getInfo() returns reference, but DeclRefExpr::getNameInfo() returns temporary DeclarationNameInfo().

It triggered a local crash for me.

  Failing Tests (1):
      Clang :: SemaTemplate/instantiate-overload-candidates.cpp

  Assertion failed!
  Program: bin\clang.EXE
  File: clang/lib/Basic/SourceManager.cpp, Line 822
  Expression: 0 && "Invalid SLocOffset or bad function choice"

llvm-svn: 220841

10 years agomacho-symbolized-disassembly.test: Don't check C++ demangler unconditionally.
NAKAMURA Takumi [Wed, 29 Oct 2014 08:08:21 +0000 (08:08 +0000)]
macho-symbolized-disassembly.test: Don't check C++ demangler unconditionally.

For example, MS PSDK is not expected to have <cxxabi.h>.
You should introduce the new feature in lit.cfg corresponding to HAVE_CXXABI_H if you would like to test demangler.

llvm-svn: 220840

10 years agotest: tweak inlined-allocs test
Saleem Abdulrasool [Wed, 29 Oct 2014 06:31:11 +0000 (06:31 +0000)]
test: tweak inlined-allocs test

Remove pointless checks for storage of uninteresting values.  Ensure that we
perform basic alias analysis to make the test more correct.  Finally, apply a
stylistic change to the test.

llvm-svn: 220839

10 years agoVMCore was renamed to IR long time ago
Seo Sanghyeon [Wed, 29 Oct 2014 05:20:39 +0000 (05:20 +0000)]
VMCore was renamed to IR long time ago

llvm-svn: 220838

10 years agoSuppress clang-tools-extra/test/clang-tidy/file-filter.cpp on win32 for investigaitng.
NAKAMURA Takumi [Wed, 29 Oct 2014 05:19:55 +0000 (05:19 +0000)]
Suppress clang-tools-extra/test/clang-tidy/file-filter.cpp on win32 for investigaitng.

llvm-svn: 220837

10 years agoShuffle a couple of formatters around. This should fix the bug that never dies, aka...
Enrico Granata [Wed, 29 Oct 2014 01:03:09 +0000 (01:03 +0000)]
Shuffle a couple of formatters around. This should fix the bug that never dies, aka rdar://15154623

llvm-svn: 220836

10 years agoObjective-C modern rewriter. Patch to fix a rewriting bug
Fariborz Jahanian [Tue, 28 Oct 2014 23:46:58 +0000 (23:46 +0000)]
Objective-C modern rewriter. Patch to fix a rewriting bug
rewriting an Objective-C block. Patch by Ryan Govostes.
rdar://18799145

llvm-svn: 220834

10 years agoUpdate llvm-objdump’s Mach-O symbolizer code to demangle C++ names.
Kevin Enderby [Tue, 28 Oct 2014 23:39:46 +0000 (23:39 +0000)]
Update llvm-objdump’s Mach-O symbolizer code to demangle C++ names.

llvm-svn: 220833

10 years ago[OCaml] PR5595: Pass LDFLAGS to tests via -cclib.
Peter Zotov [Tue, 28 Oct 2014 23:31:13 +0000 (23:31 +0000)]
[OCaml] PR5595: Pass LDFLAGS to tests via -cclib.

llvm-svn: 220832

10 years ago[OCaml] PR14083, PR9606: Only pick *.odoc files from current build target.
Peter Zotov [Tue, 28 Oct 2014 22:45:25 +0000 (22:45 +0000)]
[OCaml] PR14083, PR9606: Only pick *.odoc files from current build target.

When several build targets, e.g. Debug+Asserts and Release+Asserts
are present, ocamldoc complains of duplicate interfaces.

llvm-svn: 220831

10 years ago[clang-tidy] Updated docs for r220826.
Alexander Kornienko [Tue, 28 Oct 2014 22:43:33 +0000 (22:43 +0000)]
[clang-tidy] Updated docs for r220826.

llvm-svn: 220830

10 years ago[OCaml] Fix whitespace.
Peter Zotov [Tue, 28 Oct 2014 22:39:42 +0000 (22:39 +0000)]
[OCaml] Fix whitespace.

llvm-svn: 220829