Commit Graph

152315 Commits

Author SHA1 Message Date
Michael Gottesman
734508d9e6 [APFloat] Removed debugging cruft that snuck in.
llvm-svn: 184974
2013-06-26 17:59:36 +00:00
Nadav Rotem
87856b50cf The SLP Vectorizer works across basic blocks. Update the docs.
llvm-svn: 184973
2013-06-26 17:59:35 +00:00
Nico Weber
cd5b2cfd60 Fix warning: commas at the end of enumerator lists are a C++11 extension [-Wc++11-extensions]
llvm-svn: 184972
2013-06-26 17:31:55 +00:00
Rafael Espindola
e7e4a449ce Use enums instead of raw octal values.
Patch by 罗勇刚(Yonggang Luo).

llvm-svn: 184971
2013-06-26 17:28:04 +00:00
Joey Gouly
d077bc6a20 Add support for passing '-target armv8' through the Driver.
llvm-svn: 184970
2013-06-26 17:19:48 +00:00
Nadav Rotem
4c5b2d1de6 Erase all of the instructions that we RAUWed
llvm-svn: 184969
2013-06-26 17:16:09 +00:00
Reid Kleckner
596b85cc23 Match MSVC's handling of commas during macro argument expansion
This allows clang to parse the type_traits header in Visual Studio 2012,
which is included widely in practice.

This is a rework of r163022 by João Matos.  The original patch broke
preprocessing of gtest headers, which this patch addresses.

Patch by Will Wilson!

llvm-svn: 184968
2013-06-26 17:16:08 +00:00
Joey Gouly
b3f550e8cd Add a subtarget feature 'v8' to the ARM backend.
This allows for targeting the ARMv8 AArch32 variant.

llvm-svn: 184967
2013-06-26 16:58:26 +00:00
Nadav Rotem
f4ca3994b8 Do not add cse-ed instructions into the visited map because we dont want to consider them as a candidate for replacement of instructions to be visited.
llvm-svn: 184966
2013-06-26 16:54:53 +00:00
Tim Northover
2c45a383a8 ARM: fix more cases where predication may or may not be allowed
Unfortunately this addresses two issues (by the time I'd disentangled the logic
it wasn't worth putting it back to half-broken):

+ Coprocessor instructions should all be predicable in Thumb mode.
+ BKPT should never be predicable.

llvm-svn: 184965
2013-06-26 16:52:40 +00:00
Tim Northover
52f77f5cda ARM: allow predicated barriers in Thumb mode
The barrier instructions are only "always-execute" in ARM mode, they can quite
happily sit inside an IT block in Thumb.

llvm-svn: 184964
2013-06-26 16:52:32 +00:00
Sergey Matveev
0b2ffe30e4 [tsan] Fix build.
llvm-svn: 184963
2013-06-26 16:49:34 +00:00
Joey Gouly
05b04cf3a5 Remove the 'generic' CPU from the ARM eabi attributes printer.
Make v4 the default ARM architecture attribute, to match CodeGen.

llvm-svn: 184962
2013-06-26 16:39:06 +00:00
Bob Wilson
c4b26ad006 Revert "Temporarily disable building the armv7 variants of profile_ios on"
This reverts commit r184816.  With Chandler's change in r184929, this should
no longer be necessary.

llvm-svn: 184961
2013-06-26 16:35:16 +00:00
Rafael Espindola
b0f2eba499 PathV1 is deprecated since the 18th of Dec 2010. Remove it.
llvm-svn: 184960
2013-06-26 16:24:35 +00:00
Rafael Espindola
b6d9c0001a Don't use PathV1.h in IncludeExcludeTest.cpp.
llvm-svn: 184959
2013-06-26 16:20:55 +00:00
Rafael Espindola
b8db1cd13e Don't use PathV1.h in TransformTest.cpp.
llvm-svn: 184958
2013-06-26 15:48:36 +00:00
Sergey Matveev
d109eb052b [tsan] Move some suppressions-related code to common.
Factor out code to be reused in LSan. Also switch from linked list to vector.

llvm-svn: 184957
2013-06-26 15:37:14 +00:00
Rafael Espindola
a3d1c02356 Don't use PathV1.h in PerfSupport.cpp.
llvm-svn: 184956
2013-06-26 15:22:42 +00:00
Rafael Espindola
f530fd75b9 Add a convenience functions that don't return if the directory existed.
llvm-svn: 184955
2013-06-26 15:21:13 +00:00
Rafael Espindola
68770d24aa Remove unused include.
llvm-svn: 184954
2013-06-26 15:12:41 +00:00
Ed Maste
4ba58652b3 Don't explicitly set update version
Host::GetOSVersion's caller already sets it to UINT32_MAX to determine
which version number components are set.

llvm-svn: 184953
2013-06-26 15:10:31 +00:00
NAKAMURA Takumi
66b694490e clang/test/Driver/pth.c: Fix r184942, a regexp like "\\\\" is redundant here. Should be matched to single \ with '\\'.
llvm-svn: 184952
2013-06-26 15:03:20 +00:00
Rafael Espindola
641c6a182b Remove last use of PathV1.h from clang.
Instead of creating a temporary directory, remember the set of temporary files
we create.

llvm-svn: 184951
2013-06-26 15:01:50 +00:00
Evgeniy Stepanov
06d6c25141 [sanitizer] readdir and readdir_r interceptors.
llvm-svn: 184950
2013-06-26 15:00:53 +00:00
Rafael Espindola
32e3e7cefc We only create one file, no need to delete a directory.
llvm-svn: 184949
2013-06-26 14:33:23 +00:00
Rafael Espindola
4609ea8998 Fix the lldb build.
llvm-svn: 184948
2013-06-26 14:10:56 +00:00
Rafael Espindola
479a9bd0ba Remove unused includes.
llvm itself is now PathV1 clean.

llvm-svn: 184947
2013-06-26 13:54:34 +00:00
Ulrich Weigand
5a02a02b41 [PowerPC] Accept 17-bit signed immediates for addis
The assembler currently strictly verifies that immediates for
s16imm operands are in range (-32768 ... 32767).  This matches
the behaviour of the GNU assembler, with one exception: gas
allows, as a special case, operands in an extended range
(-65536 .. 65535) for the addis instruction only (and its
extended mnemonic lis).

The main reason for this seems to be to allow using unsigned
16-bit operands for lis, e.g. like lis %r1, 0xfedc.

Since this has been supported by gas for a long time, and
assembler source code seen "in the wild" actually exploits
this feature, this patch adds equivalent support to LLVM
for compatibility reasons.

llvm-svn: 184946
2013-06-26 13:49:53 +00:00
Rafael Espindola
e6151cf586 Remove unused header.
llvm-svn: 184945
2013-06-26 13:49:47 +00:00
Ulrich Weigand
fd3ad693e8 [PowerPC] Support symbolic u16imm operands
Currently, all instructions taking s16imm operands support symbolic
operands.  However, for u16imm operands, we only support actual
immediate integers.  This causes the assembler to reject code like

  ori %r5, %r5, symbol@l

This patch changes the u16imm operand definition to likewise
accept symbolic operands.  In fact, s16imm and u16imm can
share the same encoding routine, now renamed to getImm16Encoding.

llvm-svn: 184944
2013-06-26 13:49:15 +00:00
Amaury de la Vieuville
a6f5542be4 ARM: operands should be explicit when disassembled
llvm-svn: 184943
2013-06-26 13:39:07 +00:00
Rafael Espindola
8d593183b5 Try to fix this test on the msys buildbot.
llvm-svn: 184942
2013-06-26 13:02:16 +00:00
Aaron Ballman
29c427bec9 Quieting an MSVC warning about converting negative integer constants to unsigned types.
llvm-svn: 184941
2013-06-26 12:54:49 +00:00
Rafael Espindola
b34c1fdfd4 Don't use PathV1.h in CIndexCodeCompletion.cpp.
llvm-svn: 184940
2013-06-26 12:54:23 +00:00
Rafael Espindola
839f6e8c6d Remove dead include.
llvm-svn: 184939
2013-06-26 12:49:58 +00:00
Rafael Espindola
ccc6ea6c0b Don't use PathV1.h in cc1as_main.cpp.
llvm-svn: 184938
2013-06-26 12:48:34 +00:00
Rafael Espindola
c888979879 Remove unused header.
llvm-svn: 184937
2013-06-26 12:46:06 +00:00
Rafael Espindola
5bfc690f42 Remove unused include.
llvm-svn: 184936
2013-06-26 12:44:19 +00:00
Venkatraman Govindaraju
6f0b450530 [Sparc]: Add memory operands for the frame references in the storeRegToStackSlot
and loadRegFromStackSlot.

llvm-svn: 184935
2013-06-26 12:40:16 +00:00
Kostya Serebryany
6a068a715d [asan] initialize fake_stack lazily and increase its maximal size. This makes -fsanitize=address,use-after-return more robust: all SPEC tests pass now. In the default mode thread stacks become a bit smaller.
llvm-svn: 184934
2013-06-26 12:16:05 +00:00
Elena Demikhovsky
fed077be03 Fixed a comment.
llvm-svn: 184933
2013-06-26 12:15:53 +00:00
NAKAMURA Takumi
1c9de1f078 Suppress llvm/test/Other/can-execute.txt on msys bash.
llvm-svn: 184932
2013-06-26 10:56:44 +00:00
Elena Demikhovsky
6769c50d9e Optimized integer vector multiplication operation by replacing it with shift/xor/sub when it is possible. Fixed a bug in SDIV, where the const operand is not a splat constant vector.
llvm-svn: 184931
2013-06-26 10:55:03 +00:00
NAKAMURA Takumi
8e85e6a919 clang/test/lit.cfg: Tweak getClangBuiltinIncludeDir() not to expose dosish path separator on MSYS bash.exe, since r184774.
$ bin/clang.exe -print-file-name=include
    e:/path/to/build/bin\..\lib\clang\3.4\include

llvm-svn: 184930
2013-06-26 10:45:20 +00:00
Chandler Carruth
fc9d259c98 Revert the Darwin half of r184805: "Remove the sysroot (or isysroot)
restriction from the GCDAProfile.c"

Bill added a much more effective way of coping with the use of errno and
other system interactions for Darwin for now by disabling it on that
platform. Building against the SDK stuff is more fundamental to the
darwin build process.

llvm-svn: 184929
2013-06-26 10:05:37 +00:00
Kostya Serebryany
5e276f9dbc [asan] workaround for PR16277: don't instrument AllocaInstr with alignment more than the redzone size
llvm-svn: 184928
2013-06-26 09:49:52 +00:00
Kostya Serebryany
9f5213f20f [asan] add option -asan-keep-uninstrumented-functions
llvm-svn: 184927
2013-06-26 09:18:17 +00:00
Evgeniy Stepanov
b598c0b527 [sanitizer] Reformat line >80 chars.
llvm-svn: 184926
2013-06-26 09:16:45 +00:00
Evgeniy Stepanov
2c7d4d379e [sanitizer] Fix build with OSS4 kernel headers.
This fixes PR16453.

llvm-svn: 184925
2013-06-26 08:16:38 +00:00