NAKAMURA Takumi [Fri, 14 Feb 2014 03:59:43 +0000 (03:59 +0000)]
[PR18809] Remove XFAIL from DebugInfo/empty.ll.
I added it in r201211.
llvm-svn: 201383
Hao Liu [Fri, 14 Feb 2014 02:21:56 +0000 (02:21 +0000)]
[AArch64]Fix the assertion failure caused by "v1i1 SETCC" DAG node.
As v1i1 is illegal, the type legalizer tries to scalarize such node. But if the type operands of SETCC is legal, the scalarization algorithm will cause an assertion failure.
llvm-svn: 201381
David Blaikie [Fri, 14 Feb 2014 01:57:59 +0000 (01:57 +0000)]
DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded
Recommitting r201351 and r201355 (reverted in r201351 and r201355)
We weren't emitting the an empty (header only) line table when the line
table was empty - this made the DWARF invalid (the compile unit would
point to the zero-size debug_lines section where there should've been an
empty line table but there was nothing at all). Fix that, and as a
consequence this works around/addresses PR18809.
llvm-svn: 201380
Eric Christopher [Fri, 14 Feb 2014 01:27:03 +0000 (01:27 +0000)]
Add a command line option -gdwarf-aranges that will turn on emitting
the dwarf .debug_aranges section.
llvm-svn: 201379
Eric Christopher [Fri, 14 Feb 2014 01:26:55 +0000 (01:26 +0000)]
Disable emission of aranges by default and add a command line
option to enable again that will be matched with a commit to enable
in clang.
llvm-svn: 201378
Juergen Ributzka [Fri, 14 Feb 2014 00:51:13 +0000 (00:51 +0000)]
[X86] Don't mark movabsq as cheap-as-move - it isn't that cheap.
A simple register copy on X86 is just 3 bytes, whereas movabsq is a 10 byte
instruction. Marking movabsq as not beeing cheap will allow LICM to move it
out of the loop and it also prevents unnecessary rematerializations if the
value is needed in more than one register.
llvm-svn: 201377
Matt Arsenault [Fri, 14 Feb 2014 00:49:12 +0000 (00:49 +0000)]
Do more addrspacecast transforms that happen for bitcast.
Makes addrspacecast (gep) do addrspacecast (gep) instead.
llvm-svn: 201376
Adrian Prantl [Fri, 14 Feb 2014 00:29:33 +0000 (00:29 +0000)]
Debug info: Make DWARF4 the default for Darwin, too.
llvm-svn: 201375
Juergen Ributzka [Thu, 13 Feb 2014 23:51:55 +0000 (23:51 +0000)]
Revert "[CMake] Disable libclangTests.exe on win32 for now."
Because I also reverted the original commit that required this change.
llvm-svn: 201374
Juergen Ributzka [Thu, 13 Feb 2014 23:34:54 +0000 (23:34 +0000)]
Revert "libclang: fix a bug in processing invalid arguments, introduced in r201249,"
Reverting commit (201346) for now, because it is breaking our internal builds.
llvm-svn: 201373
Greg Clayton [Thu, 13 Feb 2014 23:34:38 +0000 (23:34 +0000)]
Fixed deadlocks that could occur when using python for breakpoints, operating system plugins, and other async python usage.
<rdar://problem/
16054348>
<rdar://problem/
16040833>
llvm-svn: 201372
Tom Stellard [Thu, 13 Feb 2014 23:34:15 +0000 (23:34 +0000)]
R600/SI: Expand all v8[if]32 operations
llvm-svn: 201371
Tom Stellard [Thu, 13 Feb 2014 23:34:13 +0000 (23:34 +0000)]
R600/SI: Add a pattern for i32 anyext
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 201370
Tom Stellard [Thu, 13 Feb 2014 23:34:12 +0000 (23:34 +0000)]
R600/SI: Completely Disable TypeRewriter on compute
llvm-svn: 201369
Tom Stellard [Thu, 13 Feb 2014 23:34:10 +0000 (23:34 +0000)]
R600/SI: Split global vector loads with more than 4 elements
llvm-svn: 201368
Tom Stellard [Thu, 13 Feb 2014 23:34:07 +0000 (23:34 +0000)]
R600/SI: Add ShaderType attribute to some tests
llvm-svn: 201367
Jason Molenda [Thu, 13 Feb 2014 23:29:36 +0000 (23:29 +0000)]
Revert r201292 which relaxed the stack frame alignment requirements.
This was primarily working around problems where we weren't able
to identify trap handlers for different environments -- but instead,
I'm working to make it easier to specify those trap handler function
names.
llvm-svn: 201366
Rafael Espindola [Thu, 13 Feb 2014 23:16:11 +0000 (23:16 +0000)]
Use __literal16. It has been supported by the linker since 2005.
llvm-svn: 201365
Jason Molenda [Thu, 13 Feb 2014 23:11:45 +0000 (23:11 +0000)]
Change the way the m_trap_handlers Platform base class ivar is initialized;
add a new pure virtual CalculateTrapHandlerSymbolNames() that Platform
subclasses must implement which fills in the function name list with any
trap handlers that are expected on that platform.
llvm-svn: 201364
Hans Wennborg [Thu, 13 Feb 2014 22:01:35 +0000 (22:01 +0000)]
MSBuild integration: get the LibraryPath right (PR18707)
It was pointing to lib\clang\3.4, but now we're on 3.5.
Make CMake insert the right version automatically.
llvm-svn: 201363
Stephen Hines [Thu, 13 Feb 2014 21:21:09 +0000 (21:21 +0000)]
Don't build DFSan functionality for Android.
llvm-svn: 201362
Diego Novillo [Thu, 13 Feb 2014 20:16:42 +0000 (20:16 +0000)]
Simplify checks in MC/AsmParser/directive_loc.s
llvm-svn: 201361
Kaelyn Uhrain [Thu, 13 Feb 2014 20:14:07 +0000 (20:14 +0000)]
Enable correcting a member declaration where the type is class template,
and the class name is shadowed by another member. Recovery still needs
to be figured out, which is non-trivial since the parser has already gone
down a much different path than if it had recognized the class template
as type instead of seeing the member that shadowed the class template.
llvm-svn: 201360
Diego Novillo [Thu, 13 Feb 2014 20:05:03 +0000 (20:05 +0000)]
Fix generation of 'isa' and 'discriminator' keywords.
Summary:
There should be a space before each of these two keywords to avoid
generating invalid assembly files.
NOTE: I could not find an obvious maintainers in CODE_OWNERS.TXT, but
this seems related to debug info.
Reviewers: echristo
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2791
llvm-svn: 201359
Reid Kleckner [Thu, 13 Feb 2014 19:51:13 +0000 (19:51 +0000)]
Tweak an _MSC_VER ifdef to use typename with clang in a unittest
In theory, Clang should figure out how to parse this correctly without
typename, but since this is the last TU that Clang falls back on in the
self-host, I'm going to compromise and check for __clang__.
And now Clang can self-host on -win32 without fallback! The 'check' and
'check-clang' targets both pass.
llvm-svn: 201358
Todd Fiala [Thu, 13 Feb 2014 19:21:13 +0000 (19:21 +0000)]
Re-enable TestAbbreviations.py on Linux after test fix.
See http://llvm.org/bugs/show_bug.cgi?id=18816.
llvm-svn: 201357
Greg Clayton [Thu, 13 Feb 2014 18:30:23 +0000 (18:30 +0000)]
Fixed a test suite failure on Darwin due to logging issues.
llvm-svn: 201356
NAKAMURA Takumi [Thu, 13 Feb 2014 18:28:28 +0000 (18:28 +0000)]
Tweak llvm/test/DebugInfo/X86/generate-odr-hash.ll corresponding to r201351 (Revert r201187).
llvm-svn: 201355
Rafael Espindola [Thu, 13 Feb 2014 18:26:41 +0000 (18:26 +0000)]
Check that GlobalAliases don't have section or alignment.
An alias is always in the section of its aliasee and has the same alignment
(since it has the same address).
llvm-svn: 201354
Duncan P. N. Exon Smith [Thu, 13 Feb 2014 18:26:15 +0000 (18:26 +0000)]
SCCIterator: Merge MinVisitNumStack and VisitStack
This patch merges MinVisitNumStack with VisitStack using a StackElement
struct.
Patch by Mehdi Amini!
llvm-svn: 201353
Benjamin Kramer [Thu, 13 Feb 2014 18:23:24 +0000 (18:23 +0000)]
InstCombine: Replace custom constant folding code with ConstantExpr.
llvm-svn: 201352
NAKAMURA Takumi [Thu, 13 Feb 2014 18:18:56 +0000 (18:18 +0000)]
[PR18809] Revert r201187, "DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded"
It really crashes cygwin's stage2 configure with "clang -g".
llvm-svn: 201351
Jordan Rose [Thu, 13 Feb 2014 18:12:30 +0000 (18:12 +0000)]
[examples] Add tablegen'd ClangCommentCommandList as a dependency for plugins.
Also, remove library dependencies for the sample analyzer-plugin. The only
library changes that would require a rebuild should be in headers, which
should already implicitly be marked as dependencies.
llvm-svn: 201350
Marshall Clow [Thu, 13 Feb 2014 17:56:12 +0000 (17:56 +0000)]
Add a test to make sure that vector supports incomplete types
llvm-svn: 201349
NAKAMURA Takumi [Thu, 13 Feb 2014 17:51:35 +0000 (17:51 +0000)]
[CMake] Disable libclangTests.exe on win32 for now.
libclangTests.exe cannot find libclang.dll since it is not on $PATH.
llvm-svn: 201348
Rafael Espindola [Thu, 13 Feb 2014 16:58:19 +0000 (16:58 +0000)]
Use mkdir instead of stat+mkdir.
This is an optimistic version of create_diretories: it tries to create the
directory first and looks at the parent only if that fails.
Running strace on "mkdir -p" shows that it is pessimistic, calling mkdir on
every element of the path. We could implement that if needed.
In any case, with both strategies there is no reason to call stat, just check
the return of mkdir.
llvm-svn: 201347
Dmitri Gribenko [Thu, 13 Feb 2014 16:51:38 +0000 (16:51 +0000)]
libclang: fix a bug in processing invalid arguments, introduced in r201249,
pointed out by Daniel Jasper in r201329
llvm-svn: 201346
Rafael Espindola [Thu, 13 Feb 2014 16:49:47 +0000 (16:49 +0000)]
Add triples to try to fix the windows bots.
llvm-svn: 201345
Benjamin Kramer [Thu, 13 Feb 2014 16:48:38 +0000 (16:48 +0000)]
Reduce code duplication resulting from the ConstantVector/ConstantDataVector split.
No intended functionality change.
llvm-svn: 201344
Alexander Kornienko [Thu, 13 Feb 2014 16:29:39 +0000 (16:29 +0000)]
Re-add the '!' removed by mistake.
llvm-svn: 201343
Alexander Kornienko [Thu, 13 Feb 2014 16:10:47 +0000 (16:10 +0000)]
Clang-tidy: don't create ASTConsumers not needed for the set of checks we perform.
Summary:
This doesn't have any significant effect on the performance, but it
looks like a good thing to do.
Reviewers: djasper, klimek
Reviewed By: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2763
llvm-svn: 201340
Kostya Serebryany [Thu, 13 Feb 2014 15:59:00 +0000 (15:59 +0000)]
[sanitizer] replace MostSignificantSetBitIndex with LeastSignificantSetBitIndex in bit vector (to iterate bits in increasing order)
llvm-svn: 201339
Kostya Serebryany [Thu, 13 Feb 2014 15:45:20 +0000 (15:45 +0000)]
[sanitizer] optimize TwoLevelBitVector::intersectsWith, extend tests, fix a check
llvm-svn: 201338
Rafael Espindola [Thu, 13 Feb 2014 15:38:16 +0000 (15:38 +0000)]
.file is only available on ELF, use a triple instead of -march.
llvm-svn: 201337
Rafael Espindola [Thu, 13 Feb 2014 15:33:35 +0000 (15:33 +0000)]
"foo" is not a ppc instruction, don't try to parse it.
llvm-svn: 201336
Rafael Espindola [Thu, 13 Feb 2014 15:30:06 +0000 (15:30 +0000)]
Specify a triple. MachO AArch64 support is missing.
llvm-svn: 201335
Ed Maste [Thu, 13 Feb 2014 15:12:57 +0000 (15:12 +0000)]
Avoid undesired variable shadowing
Michael Sartain refactored RegisterContextPOSIX_* in r192332, and I must
have missed the now-shadowed variable when I rebased the FreeBSD MIPS64
register context after that.
llvm-svn: 201334
Daniel Sanders [Thu, 13 Feb 2014 14:44:26 +0000 (14:44 +0000)]
Re-commit: Demote EmitRawText call in AsmPrinter::EmitInlineAsm() and remove hasRawTextSupport() call
Summary:
AsmPrinter::EmitInlineAsm() will no longer use the EmitRawText() call for
targets with mature MC support. Such targets will always parse the inline
assembly (even when emitting assembly). Targets without mature MC support
continue to use EmitRawText() for assembly output.
The hasRawTextSupport() check in AsmPrinter::EmitInlineAsm() has been replaced
with MCAsmInfo::UseIntegratedAs which when true, causes the integrated assembler
to parse inline assembly (even when emitting assembly output). UseIntegratedAs
is set to true for targets that consider any failure to parse valid assembly
to be a bug. Target specific subclasses generally enable the integrated
assembler in their constructor. The default value can be overridden with
-no-integrated-as.
All tests that rely on inline assembly supporting invalid assembly (for example,
those that use mnemonics such as 'foo' or 'hello world') have been updated to
disable the integrated assembler.
Changes since review (and last commit attempt):
- Fixed test failures that were missed due to configuration of local build.
(fixes crash.ll and a couple others).
- Fixed tests that happened to pass because the local build was on X86
(should fix 2007-12-17-InvokeAsm.ll)
- mature-mc-support.ll's should no longer require all targets to be compiled.
(should fix ARM and PPC buildbots)
- Object output (-filetype=obj and similar) now forces the integrated assembler
to be enabled regardless of default setting or -no-integrated-as.
(should fix SystemZ buildbots)
Reviewers: rafael
Reviewed By: rafael
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2686
llvm-svn: 201333
Evgeniy Stepanov [Thu, 13 Feb 2014 14:37:25 +0000 (14:37 +0000)]
[asan] Disable 1 test on Android.
llvm-svn: 201332
Evgeniy Stepanov [Thu, 13 Feb 2014 14:37:04 +0000 (14:37 +0000)]
[asan] Remove extra clone() arguments in test.
Android headers define clone() as a 4-argument function without ellipsis.
llvm-svn: 201331
Evgeniy Stepanov [Thu, 13 Feb 2014 14:33:24 +0000 (14:33 +0000)]
[asan] Enable signal and sigaction interceptors on Android.
Fixes AddressSanitizer.SignalTest breakage.
llvm-svn: 201330
Daniel Jasper [Thu, 13 Feb 2014 14:24:14 +0000 (14:24 +0000)]
Remove assert added in r201249.
This triggers on one of our internal tests.
Dmitri:
I do not understand this part of the codebase well enough to locate the
underlying cause easily. If the correct fix is not obvious, I can try to
debug the problem further or try to come up with reduced test case.
llvm-svn: 201329
Yaron Keren [Thu, 13 Feb 2014 14:02:28 +0000 (14:02 +0000)]
This solves warning C4005: '_NOEXCEPT' : macro redefinition when compiling
with Visual C++ 2013 by making libcxx definition text-identical to yvals.h.
Persumably this definition is for older Visual C++ versions.
In such cases it will still be defined so no functionality change.
Other platforms should not be affected as this is inside
#elif defined(_LIBCPP_MSVC)
Patch by G M!
llvm-svn: 201328
Rafael Espindola [Thu, 13 Feb 2014 13:45:45 +0000 (13:45 +0000)]
Remove dead code.
llvm-svn: 201327
Evgeniy Stepanov [Thu, 13 Feb 2014 13:43:47 +0000 (13:43 +0000)]
[asan] Enable SEGV handler on Android by default.
Seems stable enough.
Fixes null_deref.cc test.
llvm-svn: 201326
Evgeniy Stepanov [Thu, 13 Feb 2014 13:32:24 +0000 (13:32 +0000)]
[sanitizer] Fix off-by-one-line in SEGV reports on Android.
This will be covered by null_deref.cc test (requires one more fix to pass).
llvm-svn: 201325
Evgeniy Stepanov [Thu, 13 Feb 2014 13:04:39 +0000 (13:04 +0000)]
[asan] Fix null_deref test with zero base shadow.
With zero base shadow, shadow for near-zero access is itself at near-zero
location. As a result, this test crashes on the shadow access, and not on the
app access.
Relax a check to match this behavior.
llvm-svn: 201324
Daniel Jasper [Thu, 13 Feb 2014 12:51:50 +0000 (12:51 +0000)]
clang-format: Improve documentation of DerivePointerBinding.
For reference: llvm.org/PR18690.
Also updated generated help page and page creation script.
llvm-svn: 201323
Kostya Serebryany [Thu, 13 Feb 2014 12:39:21 +0000 (12:39 +0000)]
[sanitizer] address some of the dvyukov's comments on previous commits
llvm-svn: 201322
Evgeniy Stepanov [Thu, 13 Feb 2014 12:24:10 +0000 (12:24 +0000)]
Remove a check from strerror_r test.
It's not always true: on Android, strerror_r with invalid errno
prints "Unknown error ..." to the buffer and returns 0.
This test now only checks that strerror_r does not crash.
llvm-svn: 201321
NAKAMURA Takumi [Thu, 13 Feb 2014 11:25:17 +0000 (11:25 +0000)]
[CMake] Let llvm_add_library(MODULE) check capability of loadable module.
On unsupported platforms, llvm_add_library(MODULE) doesn't create any targets.
Caller may be responsible to check and add extra target properties.
llvm-svn: 201320
NAKAMURA Takumi [Thu, 13 Feb 2014 11:24:45 +0000 (11:24 +0000)]
[CMake] add_clang_library(MODULE): Create a phony target when llvm_add_library(MODULE) gave up.
llvm-svn: 201319
NAKAMURA Takumi [Thu, 13 Feb 2014 11:19:21 +0000 (11:19 +0000)]
[CMake] Move the target property PREFIX from add_llvm_loadable_module() to llvm_add_library().
llvm-svn: 201318
NAKAMURA Takumi [Thu, 13 Feb 2014 11:19:11 +0000 (11:19 +0000)]
[CMake] llvm_add_library(MODULE) may use CMAKE_MODULE_LINKER_FLAGS instead of target property LINK_FLAGS.
I mis-dropped Darwin's link flags (in clang side) since r201073.
llvm-svn: 201317
NAKAMURA Takumi [Thu, 13 Feb 2014 11:19:00 +0000 (11:19 +0000)]
[CMake] LLVM_PLUGIN_EXT: Use CMAKE_SHARED_LIBRARY_SUFFIX rather than CMAKE_SHARED_MODULE_SUFFIX in llvm tree.
FIXME: llvm/test may be aware of LLVM_PLUGIN_EXT, like as clang/test does.
FIXME: CMAKE_*_SUFFIX may be set in HandleLLVMOptions if those variables could be writable, rather than to set one as target properties.
llvm-svn: 201316
NAKAMURA Takumi [Thu, 13 Feb 2014 11:06:23 +0000 (11:06 +0000)]
llvm/test/CodeGen/AArch64/cpus.ll: Tweak to use -mtriple=aarch64-unknown-unknown, or this would crash for targeting pecoff like *-mingw32.
llvm-svn: 201315
Tim Northover [Thu, 13 Feb 2014 10:44:30 +0000 (10:44 +0000)]
ARM: remove floating-point patterns for @llvm.arm.neon.vabs
The front-end is now generating the generic @llvm.fabs for this
operation now, so the extra patterns are no longer needed.
llvm-svn: 201314
Tim Northover [Thu, 13 Feb 2014 10:44:17 +0000 (10:44 +0000)]
ARM & AArch64 NEON: share the vabs implementation.
This changes ARM to use @llvm.fabs for floating-point vabs. Patterns
already existed in the backend, and it might help mid-end phases since
it's more likely to be understood than @llvm.arm.neon.vabs.
llvm-svn: 201313
Robert Lytton [Thu, 13 Feb 2014 10:40:12 +0000 (10:40 +0000)]
XCore target pass -v flag to assembler & linker
llvm-svn: 201312
Robert Lytton [Thu, 13 Feb 2014 10:38:56 +0000 (10:38 +0000)]
add comment explaining previous commit
see 'XCore target -fexceptions flag handling'
llvm-svn: 201311
Robert Lytton [Thu, 13 Feb 2014 10:34:44 +0000 (10:34 +0000)]
XCore target -fexceptions flag handling
XCore target has -fno-exception as the default option
Pass on "-fexceptions" flag to xcc (linker)
llvm-svn: 201310
Renato Golin [Thu, 13 Feb 2014 10:26:33 +0000 (10:26 +0000)]
Remove spurious default case to silent sanitizer
llvm-svn: 201309
Alexander Kornienko [Thu, 13 Feb 2014 10:11:48 +0000 (10:11 +0000)]
Fix ExplicitConstructorCheck to warn only on in-class declarations.
Summary:
I'm not absolutely sure this is 100% correct solution, but it seems to
do what I expect.
Reviewers: djasper, klimek
Reviewed By: djasper
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2756
llvm-svn: 201308
Renato Golin [Thu, 13 Feb 2014 10:01:16 +0000 (10:01 +0000)]
Add EXPERIMENTAL --rtlib=compiler-rt to GNU Clang
This commit is not strictly correct nor accounts for all uses (shared
objects, for example), but it allows one to test the compiler-rt library
on GNU targets.
Using this patch to run the test-suite has already shown me problems
on ARM. Since this is a Darwin-only flag, nobody is using it, so it
shouldn't be a problem.
I will need extension to deal with the shared cases, but since we're
not compiling libclang_rt.so, that's not yet applicable. Many other
problems will have to be fixed first in compiler-rt (such as removing
the 'arch' name from it and making it trully multi-arch, moving it to
the default lib directory, make both .a and .so variants, etc).
llvm-svn: 201307
Kostya Serebryany [Thu, 13 Feb 2014 09:52:15 +0000 (09:52 +0000)]
[sanitizer] findPath for deadlock detector
llvm-svn: 201306
Oliver Stannard [Thu, 13 Feb 2014 09:46:11 +0000 (09:46 +0000)]
Add Cortex-A53 and Cortex-A57 cores to the AArch64 backend
llvm-svn: 201305
Evgeniy Stepanov [Thu, 13 Feb 2014 08:50:36 +0000 (08:50 +0000)]
[asan] Avoid deadlock in CovDump.
llvm-svn: 201304
Kostya Serebryany [Thu, 13 Feb 2014 07:50:20 +0000 (07:50 +0000)]
[sanitizer] AArch64 sanitizer support; patch by Christophe Lyon and Yvan Roux
llvm-svn: 201303
Kostya Serebryany [Thu, 13 Feb 2014 07:44:51 +0000 (07:44 +0000)]
[sanitizer] more code for deadlock detector, nothing really works yet (except for small unit tests).
llvm-svn: 201302
Craig Topper [Thu, 13 Feb 2014 07:12:40 +0000 (07:12 +0000)]
Remove unused method declaration.
llvm-svn: 201301
Jason Molenda [Thu, 13 Feb 2014 07:11:08 +0000 (07:11 +0000)]
The Platform base class now maintains a list of trap handlers
aka asynchronous signal handlers, which subclasses should fill
in as appropriate. For most Unix user process environments,
the one entry in this list is _sigtramp. For bare-board and
kernel environments, there will be different sets of trap
handlers.
The unwinder needs to know when a frame is a trap handler
because the rules it enforces for the frame "above" the
trap handler is different from most middle-of-the-stack frames.
<rdar://problem/
15835846>
llvm-svn: 201300
Craig Topper [Thu, 13 Feb 2014 07:07:16 +0000 (07:07 +0000)]
Remove filtering concept from X86 disassembler table generation. It's no longer necessary.
llvm-svn: 201299
Hao Liu [Thu, 13 Feb 2014 05:42:33 +0000 (05:42 +0000)]
[AArch64]Fix the problems that can't select mul/add/sub of v1i8/v1i16/v1i32 types.
As this problems are similar to shl/sra/srl, also add patterns for shift nodes.
llvm-svn: 201298
Alexey Bataev [Thu, 13 Feb 2014 05:29:23 +0000 (05:29 +0000)]
[OPENMP] 'if' clause support (no CodeGen support)
llvm-svn: 201297
Quentin Colombet [Thu, 13 Feb 2014 05:17:37 +0000 (05:17 +0000)]
[RegAlloc] Fix the assertion in the last chance recoloring to match the
condition at the call site.
llvm-svn: 201296
Rafael Espindola [Thu, 13 Feb 2014 05:11:35 +0000 (05:11 +0000)]
Copy dll storage in copyAttributes.
llvm-svn: 201295
Aaron Ballman [Thu, 13 Feb 2014 04:31:04 +0000 (04:31 +0000)]
There is no std namespace for standards-based attributes. Removing the scope qualifier and updating the only affected test case.
llvm-svn: 201294
Rafael Espindola [Thu, 13 Feb 2014 04:22:54 +0000 (04:22 +0000)]
Use simpler version of fs::create_directory.
llvm-svn: 201293
Jason Molenda [Thu, 13 Feb 2014 04:19:32 +0000 (04:19 +0000)]
Change the ABI CallFrameAddressIsValid methods for i386 and x86_64.
They were enforcing 16-byte alignment on stack frames for Darwin x86 programs.
But we've found that trap handlers typically don't have the stack pointer
aligned correctly when a trap happens and lldb wasn't backtracing all
the way through. This method is only used as a safety guard to prevent
lldb's unwinder from using a bogus address as a stack frame - we'll still
enforce word-size alignment on stack frames so that should be fine.
Also rolled back akaylor's changes from August 2013 in r188952 which changed
the i386 ABI plugin to relax the CallFrameAddressIsValid offsets for non-Darwin
targets where only 4-byte alignment is enforced. Now Darwin is the same as
those environments.
<rdar://problem/
15982682>
llvm-svn: 201292
Juergen Ributzka [Thu, 13 Feb 2014 04:19:26 +0000 (04:19 +0000)]
[DAG] Fix the recognition of opaque constants in the SelectionDAGBuilder.
This fix checks the original LLVM IR node to identify opaque constants by
looking for the bitcast-constant pattern. Originally we looked at the generated
SDNode, but this might lead to incorrect results. The SDNode could have been
generated by an constant expression that was folded to a constant.
This fixes <rdar://problem/
16050719>
llvm-svn: 201291
Rafael Espindola [Thu, 13 Feb 2014 04:08:44 +0000 (04:08 +0000)]
Use simpler version of llvm::sys::fs::create_directories.
llvm-svn: 201290
Rafael Espindola [Thu, 13 Feb 2014 04:00:35 +0000 (04:00 +0000)]
Use simpler version of sys::fs::exists when possible.
llvm-svn: 201289
Yunzhong Gao [Thu, 13 Feb 2014 02:45:10 +0000 (02:45 +0000)]
Fixing a compiler assertion with zero-width bit-fields in packed structs.
According to the GNU docs, zero-sized bitfields should not be affected by the
packed attribute.
Differential Revision: http://llvm-reviews.chandlerc.com/D2693
llvm-svn: 201288
Hao Liu [Thu, 13 Feb 2014 02:36:58 +0000 (02:36 +0000)]
[AArch64]Add support for spilling FPR8/FPR16.
llvm-svn: 201287
Reid Kleckner [Thu, 13 Feb 2014 02:18:36 +0000 (02:18 +0000)]
GlobalOpt: Aliases don't have sections, don't copy them when replacing
As defined in LangRef, aliases do not have sections. However, LLVM's
GlobalAlias class inherits from GlobalValue, which means we can read and
set its section. We should probably ban that as a separate change,
since it doesn't make much sense for an alias to have a section that
differs from its aliasee.
Fixes PR18757, where the section was being lost on the global in code
from Clang like:
extern "C" {
__attribute__((used, section("CUSTOM"))) static int in_custom_section;
}
Reviewers: rafael.espindola
Differential Revision: http://llvm-reviews.chandlerc.com/D2758
llvm-svn: 201286
Reid Kleckner [Thu, 13 Feb 2014 01:19:59 +0000 (01:19 +0000)]
Really fix unused variable warnings in CIndex.
llvm-svn: 201285
Ed Maste [Thu, 13 Feb 2014 01:10:20 +0000 (01:10 +0000)]
Remove decorator for fixed test
llvm.org/pr18805 fixed by r201270
llvm-svn: 201284
NAKAMURA Takumi [Thu, 13 Feb 2014 01:00:52 +0000 (01:00 +0000)]
[CMake] llvm_add_library: Add handling of the parameter ADDITIONAL_HEADERS to pass through to process_source.
I was insightless then about unknown optional parameters.
(Consider that LINK_LIBS foo bar ADDITIONAL_HEADERS qux quux)
Suggested by Michael Kruse. Thanks!
llvm-svn: 201283
John McCall [Thu, 13 Feb 2014 00:50:08 +0000 (00:50 +0000)]
ms_struct layout replaces platform-specific behavior like
useBitFieldTypeAlignment() and appears to ignore the special
bit-packing semantics of __attribute__((packed)).
Further flesh out an already-extensive comment.
llvm-svn: 201282
John McCall [Thu, 13 Feb 2014 00:50:02 +0000 (00:50 +0000)]
Change testcase to use FileCheck.
llvm-svn: 201281