platform/upstream/llvm.git
11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 22:17:19 +0000 (22:17 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193548

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 22:11:47 +0000 (22:11 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193547

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 22:05:05 +0000 (22:05 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193546

11 years agoFix a parser crash when there are #pragmas in a context which requires a single
Richard Smith [Mon, 28 Oct 2013 22:04:30 +0000 (22:04 +0000)]
Fix a parser crash when there are #pragmas in a context which requires a single
statement (after a case label, if, etc). Patch by Olivier Goffart!

llvm-svn: 193545

11 years agoStandardizing lli's extra module command line option
Andrew Kaylor [Mon, 28 Oct 2013 21:58:15 +0000 (21:58 +0000)]
Standardizing lli's extra module command line option

llvm-svn: 193544

11 years agoRemove stray '_'.
Bill Wendling [Mon, 28 Oct 2013 21:43:54 +0000 (21:43 +0000)]
Remove stray '_'.

llvm-svn: 193543

11 years agoUse the correct reference. Spotted by Sean Silva.
Bill Wendling [Mon, 28 Oct 2013 21:43:11 +0000 (21:43 +0000)]
Use the correct reference. Spotted by Sean Silva.

llvm-svn: 193542

11 years agoRemove 2.4 from the list of supported Python versions.
Bill Wendling [Mon, 28 Oct 2013 21:22:23 +0000 (21:22 +0000)]
Remove 2.4 from the list of supported Python versions.

llvm-svn: 193541

11 years ago[mips] Simplify LowerFormalArguments using getRegClassFor.
Akira Hatanaka [Mon, 28 Oct 2013 21:21:36 +0000 (21:21 +0000)]
[mips] Simplify LowerFormalArguments using getRegClassFor.

No functionality change.

llvm-svn: 193540

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 21:12:15 +0000 (21:12 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193539

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 21:06:12 +0000 (21:06 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193538

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 20:59:41 +0000 (20:59 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193537

11 years agoConvert another llc -filetype=obj test.
Rafael Espindola [Mon, 28 Oct 2013 20:54:33 +0000 (20:54 +0000)]
Convert another llc -filetype=obj test.

llvm-svn: 193536

11 years agoReturn early from getUnconditionalBranchTargetOpValue if the branch target is
Lang Hames [Mon, 28 Oct 2013 20:51:11 +0000 (20:51 +0000)]
Return early from getUnconditionalBranchTargetOpValue if the branch target is
an MCExpr, in order to avoid writing an encoded zero value in the immediate
field.

When getUnconditionalBranchTargetOpValue is called with an MCExpr target, we
don't know what the final immediate field value should be. We shouldn't
explicitly set the immediate field to an encoded zero value as zero is encoded
with a non-zero bit pattern. This leads to bits being set that pollute the
final immediate value. The nature of the encoding is such that the polluted
bits only affect very large immediate values, explaining why this hasn't
caused problems earlier.

Fixes <rdar://problem/15155975>.

llvm-svn: 193535

11 years agoConvert a llc -filetype=obj test into a llvm-mc test.
Rafael Espindola [Mon, 28 Oct 2013 20:40:20 +0000 (20:40 +0000)]
Convert a llc -filetype=obj test into a llvm-mc test.

llvm-svn: 193534

11 years agoMore windows path handling.
Rafael Espindola [Mon, 28 Oct 2013 19:40:25 +0000 (19:40 +0000)]
More windows path handling.

llvm-svn: 193533

11 years agoRelax test to pass with windows paths.
Rafael Espindola [Mon, 28 Oct 2013 19:19:29 +0000 (19:19 +0000)]
Relax test to pass with windows paths.

llvm-svn: 193532

11 years agoChange the default handling for SIGALRM and SIGCHLD to not notify.
Jim Ingham [Mon, 28 Oct 2013 19:00:42 +0000 (19:00 +0000)]
Change the default handling for SIGALRM and SIGCHLD to not notify.

<rdar://problem/15208799>

llvm-svn: 193530

11 years ago[msan] Fix a typo and enable poison_in_free flag.
Evgeniy Stepanov [Mon, 28 Oct 2013 18:53:37 +0000 (18:53 +0000)]
[msan] Fix a typo and enable poison_in_free flag.

llvm-svn: 193529

11 years agoSupport cross linking to arm on ubuntu.
Rafael Espindola [Mon, 28 Oct 2013 18:52:30 +0000 (18:52 +0000)]
Support cross linking to arm on ubuntu.

With this patch we correctly determine that ubuntu's ARM tree is not biarch
and use "lib" istead of "lib32".

Without this patch the search inside the arm tree for the crt files was failing
and we would end up trying to use the i686 ones in lib32.

llvm-svn: 193528

11 years agoTableGen: remove unused variable.
Ahmed Bougacha [Mon, 28 Oct 2013 18:19:04 +0000 (18:19 +0000)]
TableGen: remove unused variable.

llvm-svn: 193527

11 years agoTableGen: Refactor DAG patterns to enable parsing one pattern at a time.
Ahmed Bougacha [Mon, 28 Oct 2013 18:07:21 +0000 (18:07 +0000)]
TableGen: Refactor DAG patterns to enable parsing one pattern at a time.

llvm-svn: 193526

11 years agoTableGen: Refactor AsmWriterEmitter to keep AsmWriterInsts.
Ahmed Bougacha [Mon, 28 Oct 2013 18:07:17 +0000 (18:07 +0000)]
TableGen: Refactor AsmWriterEmitter to keep AsmWriterInsts.

These used to be referenced by the CGI->AWI map (in AsmWriterEmitter), but
stored in a vector local to EmitPrintInstruction. Move the vector to
AsmWriterEmitter too.

llvm-svn: 193525

11 years ago[arm] Implement eabi_attribute, cpu, and fpu directives.
Logan Chien [Mon, 28 Oct 2013 17:51:12 +0000 (17:51 +0000)]
[arm] Implement eabi_attribute, cpu, and fpu directives.

This commit allows the ARM integrated assembler to parse
and assemble the code with .eabi_attribute, .cpu, and
.fpu directives.

To implement the feature, this commit moves the code from
AttrEmitter to ARMTargetStreamers, and several new test
cases related to cortex-m4, cortex-r5, and cortex-a15 are
added.

Besides, this commit also change the Subtarget->isFPOnlySP()
to Subtarget->hasD16() to match the usage of .fpu directive.

This commit changes the test cases:

* Several .eabi_attribute directives in
  2010-09-29-mc-asm-header-test.ll are removed because the .fpu
  directive already cover the functionality.

* In the Cortex-A15 test case, the value for
  Tag_Advanced_SIMD_arch has be changed from 1 to 2,
  which is more precise.

llvm-svn: 193524

11 years agosimplify ConstantRange::getSetSize()
Nuno Lopes [Mon, 28 Oct 2013 16:52:38 +0000 (16:52 +0000)]
simplify ConstantRange::getSetSize()

llvm-svn: 193523

11 years ago[Sanitizer] Revert r193501 and properly fix r193448
Alexey Samsonov [Mon, 28 Oct 2013 16:31:39 +0000 (16:31 +0000)]
[Sanitizer] Revert r193501 and properly fix r193448

llvm-svn: 193522

11 years ago[SystemZ] Set usaAA to true
Richard Sandiford [Mon, 28 Oct 2013 13:53:37 +0000 (13:53 +0000)]
[SystemZ] Set usaAA to true

useAA significantly improves the handling of vector code that has TBAA
information attached.  It also helps other cases, as shown by the testsuite
changes here.  The only real downside I've seen is that it interferes with
MergeConsecutiveStores.  The problem is that that optimization works top
down, starting at the first store in the chain, and looks for cases where
the chain result is only used by a single related store.  These related
stores don't alias, so useAA will have rewritten all the later stores to
use a different chain input (typically the same one as the first store).

I think the advantages outweigh the disadvantages though, so for now I've
just disabled alias analysis for the unaligned-01.ll test.

llvm-svn: 193521

11 years agoasan/msan: separate different report blocks with new lines
Dmitry Vyukov [Mon, 28 Oct 2013 13:05:32 +0000 (13:05 +0000)]
asan/msan: separate different report blocks with new lines

this makes the reports consistent with tsan, and much more readable.

llvm-svn: 193520

11 years agotsan: start the background thread with signals blocked, otherwise it can steal users...
Dmitry Vyukov [Mon, 28 Oct 2013 12:29:32 +0000 (12:29 +0000)]
tsan: start the background thread with signals blocked, otherwise it can steal users signals

llvm-svn: 193519

11 years ago[DAGCombiner] Respect volatility when checking for aliases
Richard Sandiford [Mon, 28 Oct 2013 12:00:00 +0000 (12:00 +0000)]
[DAGCombiner] Respect volatility when checking for aliases

Making useAA() default to true for SystemZ showed that the combiner alias
analysis wasn't handling volatile accesses.  This hit many of the SystemZ
tests, but I arbitrarily picked one for the purpose of this patch.

llvm-svn: 193518

11 years agoKeep TBAA info when rewriting SelectionDAG loads and stores
Richard Sandiford [Mon, 28 Oct 2013 11:17:59 +0000 (11:17 +0000)]
Keep TBAA info when rewriting SelectionDAG loads and stores

Most SelectionDAG code drops the TBAA info when creating a new form of a
load and store (e.g. during legalization, or when converting a plain
load to an extending one).  This patch tries to catch all cases where
the TBAA information can legitimately be carried over.

The patch adds alternative forms of getLoad() and getExtLoad() that take
a MachineMemOperand instead of individual fields.  (The corresponding
getTruncStore() already exists.)  The idea is to use the MachineMemOperand
forms when all fields are carried over (size, pointer info, isVolatile,
isNonTemporal, alignment and TBAA info).  If some adjustment is being
made, e.g. to narrow the load, then we still pass the individual fields
but also pass the TBAA info.

llvm-svn: 193517

11 years agolit: multiprocessing platform fix attempt
Alp Toker [Mon, 28 Oct 2013 10:26:13 +0000 (10:26 +0000)]
lit: multiprocessing platform fix attempt

The error raised by Python varies by platform(!), so let's just catch any
exception and fall back.

Thanks to Sylvestre Ledru for noticing this on a Debian / Python 2.7 system
running code coverage.

llvm-svn: 193516

11 years ago[libsanitizer] configure+make: install include/sanitizer into Clang
Alexander Potapenko [Mon, 28 Oct 2013 08:21:35 +0000 (08:21 +0000)]
[libsanitizer] configure+make: install include/sanitizer into Clang

When building Clang with compiler-rt, copy the contents of compiler-rt/include/sanitizer into lib/clang/3.4/include/sanitizer

llvm-svn: 193515

11 years agoSCEV: Make the final add of an inbounds GEP nuw if we know that the index is positive.
Benjamin Kramer [Mon, 28 Oct 2013 07:30:06 +0000 (07:30 +0000)]
SCEV: Make the final add of an inbounds GEP nuw if we know that the index is positive.

We can't do this for the general case as saying a GEP with a negative index
doesn't have unsigned wrap isn't valid for negative indices.
  %gep = getelementptr inbounds i32* %p, i64 -1

But an inbounds GEP cannot run past the end of address space. So we check for
the very common case of a positive index and make GEPs derived from that NUW.
Together with Andy's recent non-unit stride work this lets us analyze loops
like

  void foo3(int *a, int *b) {
    for (; a < b; a++) {}
  }

PR12375, PR12376.

Differential Revision: http://llvm-reviews.chandlerc.com/D2033

llvm-svn: 193514

11 years agoStaticAnalyzer/Checkers/DynamicTypePropagation.cpp: Fix in comments. 80-col and an...
NAKAMURA Takumi [Mon, 28 Oct 2013 04:14:33 +0000 (04:14 +0000)]
StaticAnalyzer/Checkers/DynamicTypePropagation.cpp: Fix in comments. 80-col and an utf8 char.

llvm-svn: 193513

11 years agoPrune utf8 chars in comments.
NAKAMURA Takumi [Mon, 28 Oct 2013 04:07:38 +0000 (04:07 +0000)]
Prune utf8 chars in comments.

llvm-svn: 193512

11 years agoPrune trailing linefeeds.
NAKAMURA Takumi [Mon, 28 Oct 2013 04:07:31 +0000 (04:07 +0000)]
Prune trailing linefeeds.

llvm-svn: 193511

11 years agoTarget/R600: Un-tab-ify.
NAKAMURA Takumi [Mon, 28 Oct 2013 04:07:23 +0000 (04:07 +0000)]
Target/R600: Un-tab-ify.

llvm-svn: 193510

11 years agoMake first substantial checkin of my port of ARM constant islands code to Mips.
Reed Kotler [Sun, 27 Oct 2013 21:57:36 +0000 (21:57 +0000)]
Make first substantial checkin of my port of ARM constant islands code to Mips.
Before I just ported the shell of the pass. I've tried to keep everything
nearly identical to the ARM version. I think it will be very easy to eventually
merge these two and create a new more general pass that other targets can
use. I have some improvements I would like to make to allow pools to
be shared across functions and some other things. When I'm all done we
can think about making a more general pass. More to be ported but the
basic mechanism works now almost as good as gcc mips16.

llvm-svn: 193509

11 years agoClarify the comment about BSD versions in r193465
Alp Toker [Sun, 27 Oct 2013 20:49:19 +0000 (20:49 +0000)]
Clarify the comment about BSD versions in r193465

llvm-svn: 193508

11 years agoFix typo in test's REQUIRES line
Alp Toker [Sun, 27 Oct 2013 19:03:12 +0000 (19:03 +0000)]
Fix typo in test's REQUIRES line

llvm-svn: 193507

11 years agoDefine [U]LLONG_{MIN,MAX} for C++11, add tests.
JF Bastien [Sun, 27 Oct 2013 19:00:49 +0000 (19:00 +0000)]
Define [U]LLONG_{MIN,MAX} for C++11, add tests.

Add tests for limits.h, not just [U]LLONG_{MIN,MAX}.

llvm-svn: 193506

11 years agoFix the inconsistent order of parameters in the GetVBaseOffsetFromVBPtr definition...
Timur Iskhodzhanov [Sun, 27 Oct 2013 17:10:27 +0000 (17:10 +0000)]
Fix the inconsistent order of parameters in the GetVBaseOffsetFromVBPtr definition and declaration

llvm-svn: 193505

11 years agoFix option typo.
Rafael Espindola [Sun, 27 Oct 2013 14:46:16 +0000 (14:46 +0000)]
Fix option typo.

llvm-svn: 193504

11 years agoFix option spelling.
Rafael Espindola [Sun, 27 Oct 2013 14:11:19 +0000 (14:11 +0000)]
Fix option spelling.

llvm-svn: 193503

11 years agoUse -target instead of triple and use FileCheck.
Rafael Espindola [Sun, 27 Oct 2013 13:59:51 +0000 (13:59 +0000)]
Use -target instead of triple and use FileCheck.

llvm-svn: 193502

11 years agoWork around ASan/Win breakage by r193448
Timur Iskhodzhanov [Sun, 27 Oct 2013 13:37:23 +0000 (13:37 +0000)]
Work around ASan/Win breakage by r193448

llvm-svn: 193501

11 years agoNVPTX: Remove unused globals.
Benjamin Kramer [Sun, 27 Oct 2013 11:31:46 +0000 (11:31 +0000)]
NVPTX: Remove unused globals.

llvm-svn: 193500

11 years agoHexagon: Remove global state.
Benjamin Kramer [Sun, 27 Oct 2013 11:16:09 +0000 (11:16 +0000)]
Hexagon: Remove global state.

llvm-svn: 193499

11 years agoMCJIT-remote: __main should be resolved in child context.
NAKAMURA Takumi [Sun, 27 Oct 2013 10:22:52 +0000 (10:22 +0000)]
MCJIT-remote: __main should be resolved in child context.

  - Mark tests as XFAIL:cygming in test/ExecutionEngine/MCJIT/remote.
    Rather to suppress them, I'd like to leave them running as XFAIL.
  - Revert r193472. RecordMemoryManager no longer resolves __main on cygming.

There are a couple of issues.

  - X86 Codegen emits "call __main" in @main for targeting cygming.
    It is useless in JIT. FYI, tests are passing when emitting __main is disabled.
  - Current remote JIT does not resolve any symbols in child context.

FIXME: __main should be disabled, or remote JIT should resolve __main.
llvm-svn: 193498

11 years agoAVX-512: PMIN/PMAX intrinsics and patterns
Elena Demikhovsky [Sun, 27 Oct 2013 08:18:37 +0000 (08:18 +0000)]
AVX-512: PMIN/PMAX intrinsics and patterns
Patch by Cameron McInally <cameron.mcinally@nyu.edu>

llvm-svn: 193497

11 years agoA small grammar-os fixed.
Bill Wendling [Sun, 27 Oct 2013 05:09:12 +0000 (05:09 +0000)]
A small grammar-os fixed.

llvm-svn: 193496

11 years agoAdd trunk revision number on the online HTML docs.
Bill Wendling [Sun, 27 Oct 2013 05:00:50 +0000 (05:00 +0000)]
Add trunk revision number on the online HTML docs.

Patch by Vassil Vassilev.
PR13435

llvm-svn: 193495

11 years agoUpdate to current output.
Bill Wendling [Sun, 27 Oct 2013 04:50:34 +0000 (04:50 +0000)]
Update to current output.
PR14039

llvm-svn: 193494

11 years agoFix Sphinx warning.
Bill Wendling [Sun, 27 Oct 2013 04:25:02 +0000 (04:25 +0000)]
Fix Sphinx warning.

llvm-svn: 193493

11 years agoUpdate to specify that both metadata and label types aren't proper return types.
Bill Wendling [Sun, 27 Oct 2013 04:19:29 +0000 (04:19 +0000)]
Update to specify that both metadata and label types aren't proper return types.

PR15447

llvm-svn: 193492

11 years agoUpdate the Python version. And Perl isn't used anymore.
Bill Wendling [Sun, 27 Oct 2013 04:02:21 +0000 (04:02 +0000)]
Update the Python version. And Perl isn't used anymore.
PR17608

llvm-svn: 193491

11 years agoUpdate link.
Bill Wendling [Sun, 27 Oct 2013 03:57:10 +0000 (03:57 +0000)]
Update link.
PR17608

llvm-svn: 193490

11 years agoRevert r193251 : Use address-taken to disambiguate global variable and indirect memops.
Shuxin Yang [Sun, 27 Oct 2013 03:08:44 +0000 (03:08 +0000)]
Revert r193251 : Use address-taken to disambiguate global variable and indirect memops.

llvm-svn: 193489

11 years agoFix the signed-ness of a few log printf directives in Process::RunThreadPlan.
Jason Molenda [Sun, 27 Oct 2013 02:32:23 +0000 (02:32 +0000)]
Fix the signed-ness of a few log printf directives in Process::RunThreadPlan.

llvm-svn: 193488

11 years agoRather than rendering an argument to a std::string (which is primarily
Chandler Carruth [Sun, 27 Oct 2013 00:10:43 +0000 (00:10 +0000)]
Rather than rendering an argument to a std::string (which is primarily
intended for debugging and diagnostic output), just inspect the spelling
to check for specific prefixes in drectve section flags.

In addition to being significantly cheaper and not relying on
a debugging interface, this also avoids creating a temporary string and
binding it to StringRef variable. We then went on to access it after the
memory had been deallocated.

This bug too was caught by ASan. I love ASan so much. =]

llvm-svn: 193487

11 years agoUse equals_lower() rather than creating a temporary string with lower().
Chandler Carruth [Sat, 26 Oct 2013 23:53:06 +0000 (23:53 +0000)]
Use equals_lower() rather than creating a temporary string with lower().

More important than any performance concerns, the code was dropping the
temporary string on the floor after assigning it to a StringRef, and
then used the StringRef later. Caught by running the LLD tests under
ASan.

llvm-svn: 193486

11 years agoRemove REQUIRES aarch64-registered-target from test
Alp Toker [Sat, 26 Oct 2013 21:42:32 +0000 (21:42 +0000)]
Remove REQUIRES aarch64-registered-target from test

Registered targets don't matter for Sema tests, this passes fine.

llvm-svn: 193485

11 years agoCheck IR and don't use temporary files.
Rafael Espindola [Sat, 26 Oct 2013 20:55:05 +0000 (20:55 +0000)]
Check IR and don't use temporary files.

llvm-svn: 193484

11 years ago[ELF][test] Remove default section names for known contentTypes.
Shankar Easwaran [Sat, 26 Oct 2013 19:38:42 +0000 (19:38 +0000)]
[ELF][test] Remove default section names for known contentTypes.

llvm-svn: 193483

11 years ago[ELF] Fix RO/RW note sections.
Shankar Easwaran [Sat, 26 Oct 2013 19:38:39 +0000 (19:38 +0000)]
[ELF] Fix RO/RW note sections.

llvm-svn: 193482

11 years ago[X86_64] Fix the atom that need to be exported.
Shankar Easwaran [Sat, 26 Oct 2013 19:38:37 +0000 (19:38 +0000)]
[X86_64] Fix the atom that need to be exported.

llvm-svn: 193481

11 years ago[X86] Add more relocation types.
Shankar Easwaran [Sat, 26 Oct 2013 19:38:35 +0000 (19:38 +0000)]
[X86] Add more relocation types.

llvm-svn: 193480

11 years ago[PECOFF] Add atoms to the PassManager file
Shankar Easwaran [Sat, 26 Oct 2013 19:38:33 +0000 (19:38 +0000)]
[PECOFF] Add atoms to the PassManager file

llvm-svn: 193479

11 years ago[PECOFF] Add COFF relocations to encode/decode to/from YAML files
Shankar Easwaran [Sat, 26 Oct 2013 19:38:31 +0000 (19:38 +0000)]
[PECOFF] Add COFF relocations to encode/decode to/from YAML files

llvm-svn: 193478

11 years ago[PECOFF] Add dataDirectoryEntry as a recognized ContentType
Shankar Easwaran [Sat, 26 Oct 2013 19:38:29 +0000 (19:38 +0000)]
[PECOFF] Add dataDirectoryEntry as a recognized ContentType

llvm-svn: 193477

11 years ago[Darwin] Fix Reference to nullptr.
Shankar Easwaran [Sat, 26 Oct 2013 19:38:26 +0000 (19:38 +0000)]
[Darwin] Fix Reference to nullptr.

On discussing this with Nick, it looks like the StubAtoms
that contain a lazyImmediate reference kind should be null
and the location needs to be fixed up later with some value
that is an offset into the __LINKEDIT segment.

The drawback is that it allows yaml files with references
that expect a target to be considered without one.

This results in bad yaml files that would need to be handled
in the YAML Reader.

Inorder to fix this, the Stub Atoms use a dummy target such
as itself.

llvm-svn: 193476

11 years agoclang-format: Fix ObjC method exprs with variadic parameters.
Daniel Jasper [Sat, 26 Oct 2013 17:00:22 +0000 (17:00 +0000)]
clang-format: Fix ObjC method exprs with variadic parameters.

Before:
  _versionLabel.text = [
    NSString stringWithFormat:NSLocalizedString(@"version: %@", @"Label"),
    [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"]
  ];

After:
  _versionLabel.text =
      [NSString stringWithFormat:NSLocalizedString(@"version: %@", @"Label"),
          [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"]];

This fixed llvm.org/PR17695.

llvm-svn: 193475

11 years agoFileCheckize
Alp Toker [Sat, 26 Oct 2013 15:43:55 +0000 (15:43 +0000)]
FileCheckize

llvm-svn: 193474

11 years agoQuote wildcard in test's grep argument
Alp Toker [Sat, 26 Oct 2013 14:52:48 +0000 (14:52 +0000)]
Quote wildcard in test's grep argument

The * could otherwise cause shell pathname expansion.

llvm-svn: 193473

11 years agolli/RemoteMemoryManager.cpp: Resurrect __main stuff removed in r192504 to unbreak...
NAKAMURA Takumi [Sat, 26 Oct 2013 13:52:31 +0000 (13:52 +0000)]
lli/RemoteMemoryManager.cpp: Resurrect __main stuff removed in r192504 to unbreak mingw32.

llvm-svn: 193472

11 years agoself.path may be empty or otherwise miss the normal system directories,
Joerg Sonnenberger [Sat, 26 Oct 2013 13:25:45 +0000 (13:25 +0000)]
self.path may be empty or otherwise miss the normal system directories,
so try PATH next. Assume it is sane enough to cover the usual system
bash locations too, but the old list is not good enough for NetBSD.

llvm-svn: 193471

11 years ago[Sanitizer] Add pthread_attr_getaffinity_np to the list of versioned functions
Alexey Samsonov [Sat, 26 Oct 2013 12:54:03 +0000 (12:54 +0000)]
[Sanitizer] Add pthread_attr_getaffinity_np to the list of versioned functions

llvm-svn: 193470

11 years agoRemove unused diagnostic.
Benjamin Kramer [Sat, 26 Oct 2013 10:12:33 +0000 (10:12 +0000)]
Remove unused diagnostic.

llvm-svn: 193469

11 years agowww: Add information about upcoming Loop Optimization BoF
Tobias Grosser [Sat, 26 Oct 2013 10:08:35 +0000 (10:08 +0000)]
www: Add information about upcoming Loop Optimization BoF

llvm-svn: 193468

11 years agowww: Add information about isl-0.12.1 release
Tobias Grosser [Sat, 26 Oct 2013 10:01:52 +0000 (10:01 +0000)]
www: Add information about isl-0.12.1 release

Polly can now be compiled without explicitly linking to GMP licensed code.

This patch also contains some formatting improvements.

llvm-svn: 193467

11 years agowww: Add information about code coverage and static analysis
Tobias Grosser [Sat, 26 Oct 2013 10:01:42 +0000 (10:01 +0000)]
www: Add information about code coverage and static analysis

llvm-svn: 193466

11 years agolit: Issue a note when multiprocessing fails to load
Alp Toker [Sat, 26 Oct 2013 09:29:58 +0000 (09:29 +0000)]
lit: Issue a note when multiprocessing fails to load

If multiprocessing was requested, detected as available and subsequently failed
to initialize it's worth letting the user know about it before falling back to
threads.

This condition can arise in certain OpenBSD / FreeBSD Python versions.

llvm-svn: 193465

11 years agoFix a referenced before assignment in r193463
Alp Toker [Sat, 26 Oct 2013 08:46:05 +0000 (08:46 +0000)]
Fix a referenced before assignment in r193463

Some versions of Python on the builders seem strict about this.

llvm-svn: 193464

11 years agolit: handle late multiprocessing errors gracefully
Alp Toker [Sat, 26 Oct 2013 08:22:44 +0000 (08:22 +0000)]
lit: handle late multiprocessing errors gracefully

This should be a better fix for lit multiprocessing failures, replacing the
OpenBSD and FreeBSD workarounds in r193413 and r193457.

Reference: http://bugs.python.org/issue3770
llvm-svn: 193463

11 years agoSema: Emit a nicer diagnostic when IndirectFieldDecls show up inappropriately in...
David Majnemer [Sat, 26 Oct 2013 06:12:44 +0000 (06:12 +0000)]
Sema: Emit a nicer diagnostic when IndirectFieldDecls show up inappropriately in non-type template arguments

llvm-svn: 193462

11 years agoSema: Correctly build pointer-to-member arguments from a template argument with an...
David Majnemer [Sat, 26 Oct 2013 05:02:13 +0000 (05:02 +0000)]
Sema: Correctly build pointer-to-member arguments from a template argument with an IndirectFieldDecl

We only considered FieldDecl and CXXMethodDecl as appropriate which
would cause us to believe the IndirectFieldDecl corresponded to an
argument of it's field type instead of a pointer-to-member type.

This fixes PR17696.

llvm-svn: 193461

11 years agoQuick look-up for block in loop.
Wan Xiaofei [Sat, 26 Oct 2013 03:08:02 +0000 (03:08 +0000)]
Quick look-up for block in loop.

This patch implements quick look-up for block in loop by maintaining a hash set for blocks.
It improves the efficiency of loop analysis a lot, the biggest improvement could be 5-6%(458.sjeng).
Below are the compilation time for our benchmark in llc before & after the patch.

Benchmark llc - trunk llc - patched
401.bzip2 0.339081 100.00% 0.329657 102.86%
403.gcc 19.853966 100.00% 19.605466 101.27%
429.mcf 0.049823 100.00% 0.048451 102.83%
433.milc 0.514898 100.00% 0.510217 100.92%
444.namd 1.109328 100.00% 1.103481 100.53%
445.gobmk 4.988028 100.00% 4.929114 101.20%
456.hmmer 0.843871 100.00% 0.825865 102.18%
458.sjeng 0.754238 100.00% 0.714095 105.62%
464.h264ref 2.9668 100.00% 2.90612 102.09%
471.omnetpp 4.556533 100.00% 4.511886 100.99%
bitmnp01 0.038168 100.00% 0.0357 106.91%
idctrn01 0.037745 100.00% 0.037332 101.11%
libquake2 3.78689 100.00% 3.76209 100.66%
libquake_ 2.251525 100.00% 2.234104 100.78%
linpack 0.033159 100.00% 0.032788 101.13%
matrix01 0.045319 100.00% 0.043497 104.19%
nbench 0.333161 100.00% 0.329799 101.02%
tblook01 0.017863 100.00% 0.017666 101.12%
ttsprk01 0.054337 100.00% 0.053057 102.41%

Reviewer : Andrew Trick <atrick@apple.com>, Hal Finkel <hfinkel@anl.gov>
Approver : Andrew Trick <atrick@apple.com>
Test : Pass make check-all & llvm test-suite

llvm-svn: 193460

11 years agollvm/test/lit.cfg: Tighten conditions to enable 'native'.
NAKAMURA Takumi [Sat, 26 Oct 2013 02:50:20 +0000 (02:50 +0000)]
llvm/test/lit.cfg: Tighten conditions to enable 'native'.

I saw the case that 'native' was mis-enabled when x86_64-pc-win32 on x86_64-linux.

FIXME: Consider cases that target can be executed even if host_triple were different from target_triple.
llvm-svn: 193459

11 years agollvm/test/Other/close-stderr.ll: Remove "XFAIL:win32". It reverts r173509.
NAKAMURA Takumi [Sat, 26 Oct 2013 02:50:14 +0000 (02:50 +0000)]
llvm/test/Other/close-stderr.ll: Remove "XFAIL:win32". It reverts r173509.

"REQUIRES: shell" should cover if this failed.

llvm-svn: 193458

11 years agoAttempt to fix the FreeBSD build, disable multiprocessing
Alp Toker [Sat, 26 Oct 2013 02:43:08 +0000 (02:43 +0000)]
Attempt to fix the FreeBSD build, disable multiprocessing

Speculative quick fix based on clang-X86_64-freebsd output:

  File "/usr/local/lib/python2.6/multiprocessing/synchronize.py", line 33, in <module>
    " function, see issue 3770.")
ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.

llvm-svn: 193457

11 years agoclang/test/CodeGenCXX/debug-info-namespace.cpp: Suppress this also on msys, for now...
NAKAMURA Takumi [Sat, 26 Oct 2013 02:04:06 +0000 (02:04 +0000)]
clang/test/CodeGenCXX/debug-info-namespace.cpp: Suppress this also on msys, for now since r193116.

Clang confuses among dosish paths. In this case, "Input/foo.cpp" and "Input\foo.cpp" cannot be unified.

llvm-svn: 193456

11 years ago[analyzer] Don't emit an "Assuming x is <OP> y" if it's not a comparison op.
Jordan Rose [Sat, 26 Oct 2013 01:16:26 +0000 (01:16 +0000)]
[analyzer] Don't emit an "Assuming x is <OP> y" if it's not a comparison op.

We could certainly be more precise in many of our diagnostics, but before we
were printing "Assuming x is && y", which is just ridiculous.

<rdar://problem/15167979>

llvm-svn: 193455

11 years ago[PECOFF] Parse /merge command line option.
Rui Ueyama [Sat, 26 Oct 2013 00:46:57 +0000 (00:46 +0000)]
[PECOFF] Parse /merge command line option.

/merge:<from>=<to> option makes the linker to combine "from" section to "to"
section. This patch is to parse the option. The actual feature will be
implemented in a subsequent patch.

llvm-svn: 193454

11 years agoObjectiveC arc. Warn when an implicitly 'strong' property
Fariborz Jahanian [Sat, 26 Oct 2013 00:35:39 +0000 (00:35 +0000)]
ObjectiveC arc. Warn when an implicitly 'strong' property
is redeclared as 'weak' in class extension.
// rdar://15304886

llvm-svn: 193453

11 years agoDocument that -fsanitize=function is Linux-only.
Peter Collingbourne [Sat, 26 Oct 2013 00:21:57 +0000 (00:21 +0000)]
Document that -fsanitize=function is Linux-only.

llvm-svn: 193452

11 years ago[ELF] Implement .{init,fini}_array ordering.
Michael J. Spencer [Fri, 25 Oct 2013 23:59:06 +0000 (23:59 +0000)]
[ELF] Implement .{init,fini}_array ordering.

llvm-svn: 193451

11 years ago<rdar://problem/15319880>
Enrico Granata [Fri, 25 Oct 2013 23:09:40 +0000 (23:09 +0000)]
<rdar://problem/15319880>

Introduce a new boolean setting enable-auto-oneliner
This setting if set to false will force LLDB to not use the new compact one-line display

By default, one-line mode stays on, at least until we can be confident it works.
But now if it seriously impedes your workflow while it evolves/it works wonders but you still hate it, there's a way to turn it off

llvm-svn: 193450

11 years agoAdd a CMake option COMPILER_RT_DEBUG for building runtimes with full debug info.
Peter Collingbourne [Fri, 25 Oct 2013 23:03:34 +0000 (23:03 +0000)]
Add a CMake option COMPILER_RT_DEBUG for building runtimes with full debug info.

Differential Revision: http://llvm-reviews.chandlerc.com/D1984

llvm-svn: 193449

11 years agoOverhaul the symbolizer interface.
Peter Collingbourne [Fri, 25 Oct 2013 23:03:29 +0000 (23:03 +0000)]
Overhaul the symbolizer interface.

This moves away from creating the symbolizer object and initializing the
external symbolizer as separate steps.  Those steps now always take place
together.

Sanitizers with a legacy requirement to specify their own symbolizer path
should use InitSymbolizer to initialize the symbolizer with the desired
path, and GetSymbolizer to access the symbolizer.  Sanitizers with no
such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for
initialization.

The symbolizer interface has been made thread-safe (as far as I can
tell) by protecting its member functions with mutexes.

Finally, the symbolizer interface no longer relies on weak externals, the
introduction of which was probably a mistake on my part.

Differential Revision: http://llvm-reviews.chandlerc.com/D1985

llvm-svn: 193448