platform/upstream/llvm.git
9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

llvm-svn: 220888

9 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

9 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

9 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

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

llvm-svn: 220884

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

llvm-svn: 220870

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

llvm-svn: 220857

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

llvm-svn: 220829

9 years ago[OCaml] PR9719, PR14727: Make tests run without ocamlopt.
Peter Zotov [Tue, 28 Oct 2014 22:39:36 +0000 (22:39 +0000)]
[OCaml] PR9719, PR14727: Make tests run without ocamlopt.

Previously, tests hardcoded ocamlopt and cmxa, which broke builds on
machines without ocamlopt. Instead, they now fall back to ocamlc.

As a side effect this fixes PR14727, which was caused by a crude hack
that replaced gcc with g++ everywhere in the ocamlopt native compiler
path and passes it back using -cc. Now the tests use the same
technique as META, i.e. -cclib -lstdc++. It might be more fragile
than using g++ explicitly, but it will break when the installed
package will also break, which is good.

llvm-svn: 220828

9 years ago[mach-o] generate LC_DATA_IN_CODE in final linked images
Nick Kledzik [Tue, 28 Oct 2014 22:21:10 +0000 (22:21 +0000)]
[mach-o] generate LC_DATA_IN_CODE in final linked images

lld was regenerating LC_DATA_IN_CODE in .o output files, but not into
final linked images.

Update test case to verify data-in-code info makes it into final linked images.

llvm-svn: 220827

9 years ago[clang-tidy] Added -system-headers option.
Alexander Kornienko [Tue, 28 Oct 2014 22:16:13 +0000 (22:16 +0000)]
[clang-tidy] Added -system-headers option.

Added -system-headers option to allow display of warnings from system headers.
This is needed for testing libcxx, for example.

llvm-svn: 220826

9 years agoThe dllimport.cpp test was gating some checks on #ifndef MSABI,
Hans Wennborg [Tue, 28 Oct 2014 22:15:55 +0000 (22:15 +0000)]
The dllimport.cpp test was gating some checks on #ifndef MSABI,
but MSABI was never defined in the test. It seems we are erroring
on code that we should be accepting when compiling for MSVC compatibility.

This should make the test less confusing until PR21406 is fixed.

llvm-svn: 220825

9 years agoAdd a few functions to SBType to handle arrays and typedefs. Fixes rdar://12675166
Enrico Granata [Tue, 28 Oct 2014 21:44:06 +0000 (21:44 +0000)]
Add a few functions to SBType to handle arrays and typedefs. Fixes rdar://12675166

llvm-svn: 220824

9 years agoAdd a few words of documentation for the the $\{var.script:\} feature
Enrico Granata [Tue, 28 Oct 2014 21:13:31 +0000 (21:13 +0000)]
Add a few words of documentation for the the $\{var.script:\} feature

llvm-svn: 220823

9 years ago[mach-o] Turn -single_module error into a warning
Nick Kledzik [Tue, 28 Oct 2014 21:11:02 +0000 (21:11 +0000)]
[mach-o] Turn -single_module error into a warning

To be more compatible with existing darwin linker.

llvm-svn: 220822

9 years agoAdd a feature where a string data formatter can now be partially composed of Python...
Enrico Granata [Tue, 28 Oct 2014 21:07:00 +0000 (21:07 +0000)]
Add a feature where a string data formatter can now be partially composed of Python summary functions
This works similarly to the {thread/frame/process/target.script:...} feature - you write a summary string, part of which is

${var.script:someFuncName}
someFuncName is expected to be declared as
def someFuncName(SBValue,otherArgument) - essentially the same as a summary function

Since . -> [] are the only allowed separators, and % is used for custom formatting, .script: would not be a legitimate symbol anyway, which makes this non-ambiguous

llvm-svn: 220821

9 years agoAdded the ability to add attributes to inline
Sean Callanan [Tue, 28 Oct 2014 20:23:20 +0000 (20:23 +0000)]
Added the ability to add attributes to inline
testcases.  Also fixed one of the testcases to
not run on the platforms that don't support
Objective-C.

We want to do better with the Objective-C attribute
but we'll do that in a future commit.

llvm-svn: 220820

9 years agoObjective-C remove an unused enumerator which causes
Fariborz Jahanian [Tue, 28 Oct 2014 20:21:33 +0000 (20:21 +0000)]
Objective-C remove an unused enumerator which causes
warning in a switch statement.

llvm-svn: 220819

9 years ago[OCaml] PR19859: Add functions to query and modify branches.
Peter Zotov [Tue, 28 Oct 2014 19:47:02 +0000 (19:47 +0000)]
[OCaml] PR19859: Add functions to query and modify branches.

Patch by Gabriel Radanne <drupyog@zoho.com>.

llvm-svn: 220818

9 years ago[C API] PR19859: Add functions to query and modify branches.
Peter Zotov [Tue, 28 Oct 2014 19:46:56 +0000 (19:46 +0000)]
[C API] PR19859: Add functions to query and modify branches.

Patch by Gabriel Radanne <drupyog@zoho.com>.

llvm-svn: 220817

9 years ago[OCaml] PR19859: Add tests for reading the values of numeric constants.
Peter Zotov [Tue, 28 Oct 2014 19:46:52 +0000 (19:46 +0000)]
[OCaml] PR19859: Add tests for reading the values of numeric constants.

Patch by Gabriel Radanne <drupyog@zoho.com>.

llvm-svn: 220816

9 years ago[OCaml] PR19859: Add Llvm.{fcmp_predicate,float_of_const}.
Peter Zotov [Tue, 28 Oct 2014 19:46:48 +0000 (19:46 +0000)]
[OCaml] PR19859: Add Llvm.{fcmp_predicate,float_of_const}.

Patch by Gabriel Radanne <drupyog@zoho.com>.

llvm-svn: 220815

9 years ago[C API] PR19859: Add LLVMGetFCmpPredicate and LLVMConstRealGetDouble.
Peter Zotov [Tue, 28 Oct 2014 19:46:44 +0000 (19:46 +0000)]
[C API] PR19859: Add LLVMGetFCmpPredicate and LLVMConstRealGetDouble.

Patch by Gabriel Radanne <drupyog@zoho.com>.

llvm-svn: 220814

9 years agoclang-format: Improve && detection as binary operator.
Daniel Jasper [Tue, 28 Oct 2014 18:28:22 +0000 (18:28 +0000)]
clang-format: Improve && detection as binary operator.

Before:
  template <class T,
            class = typename ::std::enable_if<
                ::std::is_array<T>{}&& ::std::is_array<T>{}>::type>
  void F();

After:
  template <class T,
            class = typename ::std::enable_if<
                ::std::is_array<T>{} && ::std::is_array<T>{}>::type>
  void F();

llvm-svn: 220813

9 years agoObjective-C. revert patch for rdar://17554063.
Fariborz Jahanian [Tue, 28 Oct 2014 18:28:16 +0000 (18:28 +0000)]
Objective-C. revert patch for rdar://17554063.

llvm-svn: 220812

9 years agoTransforms: reapply SVN r219899
Saleem Abdulrasool [Tue, 28 Oct 2014 18:27:37 +0000 (18:27 +0000)]
Transforms: reapply SVN r219899

This restores the commit from SVN r219899 with an additional change to ensure
that the CodeGen is correct for the case that was identified as being incorrect
(originally PR7272).

In the case that during inlining we need to synthesize a value on the stack
(i.e. for passing a value byval), then any function involving that alloca must
be stripped of its tailness as the restriction that it does not access the
parent's stack no longer holds.  Unfortunately, a single alloca can cause a
rippling effect through out the inlining as the value may be aliased or may be
mutated through an escaped external call.  As such, we simply track if an alloca
has been introduced in the frame during inlining, and strip any tail calls.

llvm-svn: 220811

9 years agoWhen trying to get the element type of an array type, do not go to the canonical...
Enrico Granata [Tue, 28 Oct 2014 18:25:50 +0000 (18:25 +0000)]
When trying to get the element type of an array type, do not go to the canonical type, since that will strip typedefs where we want them to be preserved. Fixes rdar://15453076

llvm-svn: 220810

9 years ago[AVX512] Fix VSQRT packed instructions internal names.
Robert Khasanov [Tue, 28 Oct 2014 18:22:41 +0000 (18:22 +0000)]
[AVX512] Fix VSQRT packed instructions internal names.
No functional change

llvm-svn: 220808

9 years agoclang-format: Fix test.
Daniel Jasper [Tue, 28 Oct 2014 18:18:02 +0000 (18:18 +0000)]
clang-format: Fix test.

llvm-svn: 220807

9 years ago[AVX512] Extended avx512_sqrt_packed (sqrt instructions) to VL subset.
Robert Khasanov [Tue, 28 Oct 2014 18:15:20 +0000 (18:15 +0000)]
[AVX512] Extended avx512_sqrt_packed (sqrt instructions) to VL subset.
Refactored through AVX512_maskable

llvm-svn: 220806

9 years agoclang-format: Improve && detection as binary operators.
Daniel Jasper [Tue, 28 Oct 2014 18:11:52 +0000 (18:11 +0000)]
clang-format: Improve && detection as binary operators.

Before:
  template <class T, class = typename std::enable_if<std::is_integral<
                         T>::value &&(sizeof(T) > 1 || sizeof(T) < 8)>::type>
  void F();

After:
  template <class T, class = typename std::enable_if<
                         std::is_integral<T>::value &&
                         (sizeof(T) > 1 || sizeof(T) < 8)>::type>
  void F();

llvm-svn: 220805

9 years agoFix example in documentation of target triple sanitization.
Eric Fiselier [Tue, 28 Oct 2014 18:03:38 +0000 (18:03 +0000)]
Fix example in documentation of target triple sanitization.

llvm-svn: 220804

9 years agoActually remove this test entirely.
Fariborz Jahanian [Tue, 28 Oct 2014 17:32:36 +0000 (17:32 +0000)]
Actually remove this test entirely.

llvm-svn: 220803

9 years ago[Objective-C]. revert r220740,r220727
Fariborz Jahanian [Tue, 28 Oct 2014 17:26:21 +0000 (17:26 +0000)]
[Objective-C]. revert r220740,r220727

llvm-svn: 220802

9 years agoclang-format: Improve function declaration detection.
Daniel Jasper [Tue, 28 Oct 2014 17:06:04 +0000 (17:06 +0000)]
clang-format: Improve function declaration detection.

Before:
  ReturnType MACRO
      FunctionName() {}

After:
  ReturnType MACRO
  FunctionName() {}

This fixes llvm.org/PR21404.

I wonder what the motivation for that if-condition was. But as no test
breaks, ...

llvm-svn: 220801

9 years agoPR17730: Add test that we don't crash on this testcase. (The bug is already fixed.)
Richard Smith [Tue, 28 Oct 2014 17:00:19 +0000 (17:00 +0000)]
PR17730: Add test that we don't crash on this testcase. (The bug is already fixed.)

llvm-svn: 220787

9 years agoclang-format: Update generated documentation with new flag.
Daniel Jasper [Tue, 28 Oct 2014 16:56:37 +0000 (16:56 +0000)]
clang-format: Update generated documentation with new flag.

llvm-svn: 220786

9 years agoPR21367: Don't accept rvalue references as an extension in C++98 mode if we're in...
Richard Smith [Tue, 28 Oct 2014 16:55:02 +0000 (16:55 +0000)]
PR21367: Don't accept rvalue references as an extension in C++98 mode if we're in a new-type-id or conversion-type-id, since those things can legitimately be followed by a binary && operator.

llvm-svn: 220785