Jordan Rose
04801d549a
[CMake] Update GetSVN.cmake to use LLVM version control helper scripts.
...
This allows the logic to work with Git, and also uses the variable names
to match what Clang is actually looking for.
This changes the interface of GetSVN.cmake. Clang change to follow.
llvm-svn: 190556
2013-09-11 22:46:41 +00:00
Nick Lewycky
04f6de0fd7
Fix anachronism/typo in syntax of declaration of llvm.va_start.
...
llvm-svn: 190552
2013-09-11 22:04:52 +00:00
Bill Wendling
7b650a751f
Use the appropriate return type for the compact unwind encoding.
...
llvm-svn: 190551
2013-09-11 21:47:57 +00:00
Hal Finkel
71780ec4fd
Implement TTI getUnrollingPreferences for PowerPC
...
The PowerPC A2 core greatly benefits from aggressive concatenation unrolling;
use the new getUnrollingPreferences to enable this by default when targeting
the PPC A2 core.
llvm-svn: 190549
2013-09-11 21:20:40 +00:00
Bill Wendling
184d5d31bc
Move into an anonymous namespace and closer to where it's used.
...
llvm-svn: 190547
2013-09-11 20:38:09 +00:00
Manman Ren
5b2f4b0540
Debug info: add more comments.
...
llvm-svn: 190544
2013-09-11 19:40:28 +00:00
Hal Finkel
8f2e700522
Add getUnrollingPreferences to TTI
...
Allow targets to customize the default behavior of the generic loop unrolling
transformation. This will be used by the PowerPC backend when targeting the A2
core (which is in-order with a deep pipeline), and using more aggressive
defaults is important.
llvm-svn: 190542
2013-09-11 19:25:43 +00:00
Bill Wendling
4c3b514da0
Try to fix the atom buildbots by adding an explicit 'cpu' to the 'llc' command.
...
llvm-svn: 190541
2013-09-11 19:06:04 +00:00
Manman Ren
fa7b0b8767
Debug Info: move class definition of DIRef.
...
Definition of DIRef used to require the full definition of DIType because
of usage of DIType::isType in DIRef::resolve. We now use DIDescriptor::isType
instead to remove the requirement and move definition of DIRef before DIType.
With this, we can move the definition of DIType::getContext to the header
file.
llvm-svn: 190540
2013-09-11 18:55:55 +00:00
Benjamin Kramer
079b96e6f7
Revert "Give internal classes hidden visibility."
...
It works with clang, but GCC has different rules so we can't make all of those
hidden. This reverts commit r190534.
llvm-svn: 190536
2013-09-11 18:05:11 +00:00
Daniel Dunbar
9aeba4963a
[lit] Add support for attach arbitrary metrics to test results.
...
- This is a work-in-progress and all details are subject to change, but I am
trying to build up support for allowing lit to be used as a driver for
performance tests (or other tests which might want to record information
beyond simple PASS/FAIL).
llvm-svn: 190535
2013-09-11 17:45:11 +00:00
Benjamin Kramer
6a44af3629
Give internal classes hidden visibility.
...
Worth 100k on a linux/x86_64 Release+Asserts clang.
llvm-svn: 190534
2013-09-11 17:42:27 +00:00
Benjamin Kramer
17c17bce2a
llvm-tblgen: Mangle operand replacements into the strings in printAliasInstr.
...
Cuts down the bloat in the AArch64 asm writer a bit.
llvm-svn: 190527
2013-09-11 15:42:16 +00:00
Benjamin Kramer
fcb7166404
Don't expose symbols of lle_ functions.
...
+ formatting fixes.
llvm-svn: 190523
2013-09-11 12:42:39 +00:00
Daniel Sanders
7fab912257
[mips][msa] Added test cases that were supposed to be part of r190507, r190509, r190512, and r190518.
...
llvm-svn: 190522
2013-09-11 12:39:25 +00:00
Daniel Sanders
fbcb582942
[mips][msa] Added support for matching mulv, nlzc, sll, sra, srl, and subv from normal IR (i.e. not intrinsics)
...
llvm-svn: 190518
2013-09-11 11:58:30 +00:00
Benjamin Kramer
d77143f89a
llvm-tblgen: Stabilize subreg index tables.
...
Otherwise SequenceToOffsetTable will sort by pointer and becomes non-deterministic.
llvm-svn: 190514
2013-09-11 11:22:26 +00:00
Daniel Sanders
f5bd937bc4
[mips][msa] Added support for matching fadd, fdiv, flog2, fmul, frint, fsqrt, and fsub from normal IR (i.e. not intrinsics)
...
llvm-svn: 190512
2013-09-11 10:51:30 +00:00
Benjamin Kramer
bd4ac9bc6d
Path: Add an in-place version of path::native.
...
This reflects the common use case of nativizing a prepared path. The existing
version invokes undefined behavior if input = output, add an assert to catch
that case.
llvm-svn: 190510
2013-09-11 10:45:21 +00:00
Daniel Sanders
607952bdad
[mips][msa] Added support for matching div_[su] from normal IR (i.e. not intrinsics)
...
llvm-svn: 190509
2013-09-11 10:38:58 +00:00
Daniel Sanders
fa5ab1c856
[mips][msa] Added support for matching addv from normal IR (i.e. not intrinsics)
...
The corresponding intrinsic is now lowered into equivalent IR (ISD::ADD) before instruction selection.
llvm-svn: 190507
2013-09-11 10:28:16 +00:00
Daniel Sanders
c65f58a9c7
[mips][msa] Separate the configuration of int/float vector types since they will diverge soon
...
No functional change
llvm-svn: 190506
2013-09-11 10:15:48 +00:00
Daniel Sanders
cb2929c239
[mips][msa] Corrected the definition of the dotp_[su].[hwd] intrinsics
...
The elements of the operands should be half the width of the elements of
the result.
llvm-svn: 190505
2013-09-11 09:59:17 +00:00
NAKAMURA Takumi
7230246d14
config-ix.cmake: Tweak stray endif(...) to suppress a warning in CMake.
...
llvm-svn: 190502
2013-09-11 09:42:03 +00:00
Bill Wendling
62a2d14ac5
Simplify the checking of function attributes by using the simple methods.
...
llvm-svn: 190499
2013-09-11 08:35:09 +00:00
Matt Arsenault
d3471e9ea8
Use type form of getIntPtrType
...
This doesn't change anything since malloc always returns
address space 0.
llvm-svn: 190498
2013-09-11 07:29:40 +00:00
Rui Ueyama
0ad114c446
Fix typo
...
llvm-svn: 190492
2013-09-11 05:22:01 +00:00
Matt Arsenault
009faed1be
Teach loop-idiom about address space pointer sizes
...
llvm-svn: 190491
2013-09-11 05:09:42 +00:00
Matt Arsenault
5df49bd703
Add braces
...
llvm-svn: 190490
2013-09-11 05:09:35 +00:00
Rui Ueyama
106ededc4e
Re-submit r190469: YAMLIO: Fix string quoting logic.
...
llvm-svn: 190485
2013-09-11 04:00:08 +00:00
Hans Wennborg
33ae7cea9f
Revert "YAMLIO: Fix string quoting logic." (r190469)
...
It was turning the buildbots red.
llvm-svn: 190480
2013-09-11 01:59:32 +00:00
Michael Gottesman
3369612808
[python-bindings] Added support for getting/setting operands of values and getting the number of operands of a value.
...
Also in the process did some cleanups for BasicBlock.
llvm-svn: 190477
2013-09-11 01:38:12 +00:00
Michael Gottesman
cffd45b2e1
[python-bindings] Added support for iterating over a basic blocks instructions, getting their name/dumping them, f/b iteration.
...
Tests are included.
llvm-svn: 190475
2013-09-11 01:17:38 +00:00
Michael Gottesman
6cf2e86139
[python-bindings] Added support for iterating over a function's basic blocks, dumping/getting names of those bb, f/w iteration.
...
Tests are included.
llvm-svn: 190473
2013-09-11 01:01:40 +00:00
Rui Ueyama
38dfffa891
Remove trailing whitespace
...
llvm-svn: 190472
2013-09-11 00:53:07 +00:00
Michael Gottesman
e0cbb294cb
[python-bindings] Added support for getting a module's functions, iterating f/b over said functions, dumping/print name of functions.
...
Tests are included as well.
llvm-svn: 190471
2013-09-11 00:52:47 +00:00
Rui Ueyama
9a40ae8935
YAMLIO: Fix string quoting logic.
...
YAMLIO printed a string as is without quotes unless it contains a newline
character. That did not suffice. We also need to quote a string if it starts
with a backquote, quote, double quote or atsign, or it's the empty string.
llvm-svn: 190469
2013-09-11 00:45:48 +00:00
Michael Gottesman
d99f387f5e
[python-bindings] Export OpCode from core.py.
...
llvm-svn: 190468
2013-09-11 00:41:07 +00:00
Michael Gottesman
28ff44ab37
[python-bindings] Added test for reading a module from bitcode.
...
llvm-svn: 190467
2013-09-11 00:41:05 +00:00
Eli Friedman
8f06d55697
Rename variables for consistency.
...
No functional change.
llvm-svn: 190466
2013-09-11 00:41:02 +00:00
Michael Gottesman
b67ef22556
[python-bindings] Fixed 3 test failures caused by typos.
...
llvm-svn: 190465
2013-09-11 00:41:02 +00:00
Eli Friedman
77d7fbb924
Get rid of unused isPodLike definitions.
...
llvm-svn: 190461
2013-09-11 00:36:54 +00:00
Nico Rieck
92d649ad61
Support ANSI escape code on Windows
...
In some cases (e.g. when a build system pipes stderr) the Windows console
API cannot be used to color output. For these, provide a way to switch to
ANSI escape codes. This is required for Clang's -fansi-escape-codes option.
llvm-svn: 190460
2013-09-11 00:36:48 +00:00
Michael Gottesman
1e4e6fb892
Fixed typo.
...
llvm-svn: 190459
2013-09-11 00:27:23 +00:00
Michael Gottesman
fd690f38b3
[python-bindings] Added code for loading a module from bitcode, getset its datalayout, getset its target, dump it, print it to a file.
...
llvm-svn: 190458
2013-09-11 00:23:14 +00:00
Michael Gottesman
b507e3ed8b
[python-bindings] Added bindings for LLVMContextRef and a test for creating a new context or getting the global context.
...
llvm-svn: 190457
2013-09-11 00:23:10 +00:00
Michael Gottesman
41eee30cd7
[python-bindings] Implemented the PassRegistry class and the calls to initialize/shutdown llvm. Also included an initialize_llvm declaration.
...
llvm-svn: 190456
2013-09-11 00:23:08 +00:00
Michael Gottesman
35ccdf94ca
[python-bindings] Removed unused import byref from llvm/disassembler.py.
...
llvm-svn: 190455
2013-09-11 00:23:05 +00:00
Eli Friedman
05906faa4d
Don't assert on invalid loop vectorization hint.
...
llvm-svn: 190450
2013-09-10 23:45:25 +00:00
Eli Friedman
3e7dca6718
Fix another mistake in r190442.
...
Sorry about that; I'll try to be more careful about DEBUG mode.
llvm-svn: 190449
2013-09-10 23:22:56 +00:00