Commit Graph

167448 Commits

Author SHA1 Message Date
Tom Stellard 6c7a7e82a7 R600/SI: Completely Disable TypeRewriter on compute
llvm-svn: 201369
2014-02-13 23:34:12 +00:00
Tom Stellard 80be9650e3 R600/SI: Split global vector loads with more than 4 elements
llvm-svn: 201368
2014-02-13 23:34:10 +00:00
Tom Stellard 60b6153044 R600/SI: Add ShaderType attribute to some tests
llvm-svn: 201367
2014-02-13 23:34:07 +00:00
Jason Molenda abba74b4ee 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
2014-02-13 23:29:36 +00:00
Rafael Espindola 1f3de49f37 Use __literal16. It has been supported by the linker since 2005.
llvm-svn: 201365
2014-02-13 23:16:11 +00:00
Jason Molenda 2094dbf4e7 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
2014-02-13 23:11:45 +00:00
Hans Wennborg 20b99b60b8 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
2014-02-13 22:01:35 +00:00
Stephen Hines 93ecf3a917 Don't build DFSan functionality for Android.
llvm-svn: 201362
2014-02-13 21:21:09 +00:00
Diego Novillo 8d9be9a4cf Simplify checks in MC/AsmParser/directive_loc.s
llvm-svn: 201361
2014-02-13 20:16:42 +00:00
Kaelyn Uhrain 67b44c9871 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
2014-02-13 20:14:07 +00:00
Diego Novillo b1b5007c52 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
2014-02-13 20:05:03 +00:00
Reid Kleckner 0f679177e1 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
2014-02-13 19:51:13 +00:00
Todd Fiala 6bb55ba42b Re-enable TestAbbreviations.py on Linux after test fix.
See http://llvm.org/bugs/show_bug.cgi?id=18816.

llvm-svn: 201357
2014-02-13 19:21:13 +00:00
Greg Clayton 8b963bbd07 Fixed a test suite failure on Darwin due to logging issues.
llvm-svn: 201356
2014-02-13 18:30:23 +00:00
NAKAMURA Takumi f71dc448b9 Tweak llvm/test/DebugInfo/X86/generate-odr-hash.ll corresponding to r201351 (Revert r201187).
llvm-svn: 201355
2014-02-13 18:28:28 +00:00
Rafael Espindola 79c3ab7c5e 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
2014-02-13 18:26:41 +00:00
Duncan P. N. Exon Smith 2835604a14 SCCIterator: Merge MinVisitNumStack and VisitStack
This patch merges MinVisitNumStack with VisitStack using a StackElement
struct.

Patch by Mehdi Amini!

llvm-svn: 201353
2014-02-13 18:26:15 +00:00
Benjamin Kramer 920409585f InstCombine: Replace custom constant folding code with ConstantExpr.
llvm-svn: 201352
2014-02-13 18:23:24 +00:00
NAKAMURA Takumi 4f2a067df1 [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
2014-02-13 18:18:56 +00:00
Jordan Rose ab57f79df4 [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
2014-02-13 18:12:30 +00:00
Marshall Clow cdf2fae610 Add a test to make sure that vector supports incomplete types
llvm-svn: 201349
2014-02-13 17:56:12 +00:00
NAKAMURA Takumi f98c7ac6e6 [CMake] Disable libclangTests.exe on win32 for now.
libclangTests.exe cannot find libclang.dll since it is not on $PATH.

llvm-svn: 201348
2014-02-13 17:51:35 +00:00
Rafael Espindola b6f72b240f 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
2014-02-13 16:58:19 +00:00
Dmitri Gribenko fbe5672746 libclang: fix a bug in processing invalid arguments, introduced in r201249,
pointed out by Daniel Jasper in r201329

llvm-svn: 201346
2014-02-13 16:51:38 +00:00
Rafael Espindola 8459762c88 Add triples to try to fix the windows bots.
llvm-svn: 201345
2014-02-13 16:49:47 +00:00
Benjamin Kramer 989b92936c Reduce code duplication resulting from the ConstantVector/ConstantDataVector split.
No intended functionality change.

llvm-svn: 201344
2014-02-13 16:48:38 +00:00
Alexander Kornienko d68aa4c0fc Re-add the '!' removed by mistake.
llvm-svn: 201343
2014-02-13 16:29:39 +00:00
Alexander Kornienko 298b3823b5 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
2014-02-13 16:10:47 +00:00
Kostya Serebryany efe2f7e2c8 [sanitizer] replace MostSignificantSetBitIndex with LeastSignificantSetBitIndex in bit vector (to iterate bits in increasing order)
llvm-svn: 201339
2014-02-13 15:59:00 +00:00
Kostya Serebryany 67d419736a [sanitizer] optimize TwoLevelBitVector::intersectsWith, extend tests, fix a check
llvm-svn: 201338
2014-02-13 15:45:20 +00:00
Rafael Espindola 98f0cfdd90 .file is only available on ELF, use a triple instead of -march.
llvm-svn: 201337
2014-02-13 15:38:16 +00:00
Rafael Espindola e6f37b908a "foo" is not a ppc instruction, don't try to parse it.
llvm-svn: 201336
2014-02-13 15:33:35 +00:00
Rafael Espindola 432acf5cef Specify a triple. MachO AArch64 support is missing.
llvm-svn: 201335
2014-02-13 15:30:06 +00:00
Ed Maste 800e12ac81 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
2014-02-13 15:12:57 +00:00
Daniel Sanders 753e17629d 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
2014-02-13 14:44:26 +00:00
Evgeniy Stepanov 5cb24b8ca9 [asan] Disable 1 test on Android.
llvm-svn: 201332
2014-02-13 14:37:25 +00:00
Evgeniy Stepanov 4e6096b859 [asan] Remove extra clone() arguments in test.
Android headers define clone() as a 4-argument function without ellipsis.

llvm-svn: 201331
2014-02-13 14:37:04 +00:00
Evgeniy Stepanov f79669a323 [asan] Enable signal and sigaction interceptors on Android.
Fixes AddressSanitizer.SignalTest breakage.

llvm-svn: 201330
2014-02-13 14:33:24 +00:00
Daniel Jasper a238b17e76 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
2014-02-13 14:24:14 +00:00
Yaron Keren 3ef24c4f9a 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
2014-02-13 14:02:28 +00:00
Rafael Espindola b32292ddf7 Remove dead code.
llvm-svn: 201327
2014-02-13 13:45:45 +00:00
Evgeniy Stepanov 8978389a32 [asan] Enable SEGV handler on Android by default.
Seems stable enough.
Fixes null_deref.cc test.

llvm-svn: 201326
2014-02-13 13:43:47 +00:00
Evgeniy Stepanov 3bec7a9c77 [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
2014-02-13 13:32:24 +00:00
Evgeniy Stepanov 391f0234eb [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
2014-02-13 13:04:39 +00:00
Daniel Jasper ee107adb7d clang-format: Improve documentation of DerivePointerBinding.
For reference: llvm.org/PR18690.

Also updated generated help page and page creation script.

llvm-svn: 201323
2014-02-13 12:51:50 +00:00
Kostya Serebryany 07526fb4a0 [sanitizer] address some of the dvyukov's comments on previous commits
llvm-svn: 201322
2014-02-13 12:39:21 +00:00
Evgeniy Stepanov 788527d9cd 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
2014-02-13 12:24:10 +00:00
NAKAMURA Takumi 487f387b19 [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
2014-02-13 11:25:17 +00:00
NAKAMURA Takumi 8e57597830 [CMake] add_clang_library(MODULE): Create a phony target when llvm_add_library(MODULE) gave up.
llvm-svn: 201319
2014-02-13 11:24:45 +00:00
NAKAMURA Takumi e72e2e9088 [CMake] Move the target property PREFIX from add_llvm_loadable_module() to llvm_add_library().
llvm-svn: 201318
2014-02-13 11:19:21 +00:00