Matt Arsenault
1f521e921d
Scalarize select vector arguments when extracted.
...
When the elements are extracted from a select on vectors
or a vector select, do the select on the extracted scalars
from the input if there is only one use.
llvm-svn: 194013
2013-11-04 20:36:06 +00:00
Sean Silva
f6760b61dc
[docs] Add link to 32-bit ARM ELF supplement.
...
llvm-svn: 194011
2013-11-04 19:43:36 +00:00
Jakub Staszak
a0334b429e
Use startswith_lower() where possible.
...
llvm-svn: 194007
2013-11-04 19:22:50 +00:00
Cameron McInally
02e4f56c18
Add support for AVX512 masked vector blend intrinsics.
...
llvm-svn: 194006
2013-11-04 19:14:56 +00:00
Manman Ren
65b6ebbeff
Rename testing case to use - instead of _.
...
llvm-svn: 194001
2013-11-04 18:52:06 +00:00
Rafael Espindola
5205124829
Change BitcodeReader to use error_code instead of bool + string.
...
In order to create an ObjectFile implementation that uses bitcode files, we
need to propagate the bitcode errors to the ObjectFile interface, so we need
to convert it to use the same error handling as ObjectFile: error_code.
llvm-svn: 193996
2013-11-04 16:16:24 +00:00
Zoran Jovanovic
134add2b71
Support for microMIPS branch instructions.
...
llvm-svn: 193992
2013-11-04 14:53:22 +00:00
Elena Demikhovsky
9c41e95ef5
AVX-512: fixed a typo in builtin name
...
llvm-svn: 193988
2013-11-04 11:48:23 +00:00
Benjamin Kramer
2d870f327a
X86: Add a description for AMD bdver3 aka Steamroller.
...
This is just bdver2 + FSGSBase.
llvm-svn: 193984
2013-11-04 10:29:20 +00:00
Filip Pizlo
0080a77e7a
Make the pretty stack trace be an opt-in, rather than opt-out, facility. Enable pretty
...
stack traces by default if you use PrettyStackTraceProgram, so that existing LLVM-based
tools will continue to get it without any changes.
llvm-svn: 193971
2013-11-04 02:22:25 +00:00
Peter Zotov
4b13ee5f62
[OCaml] implement Llvm_passmgr_builder, bindings for PassManagerBuilder
...
llvm-svn: 193968
2013-11-04 01:39:42 +00:00
Peter Zotov
23e94a56d9
[OCaml] Documentation
...
llvm-svn: 193967
2013-11-04 01:39:31 +00:00
Peter Zotov
22f34b9373
[OCaml] Implement missing LLVMCore APIs
...
llvm-svn: 193966
2013-11-04 01:39:26 +00:00
Peter Zotov
d01f123fa7
[OCaml] Formatting
...
llvm-svn: 193965
2013-11-04 01:39:18 +00:00
Elena Demikhovsky
841cd7d09e
AVX-512: added VPCONFLICT instruction and intrinsics,
...
added EVEX_KZ to tablegen
llvm-svn: 193959
2013-11-03 13:46:31 +00:00
Benjamin Kramer
15ebc47438
SLPVectorizer: Add a missing pair of parens. No functionality change.
...
llvm-svn: 193958
2013-11-03 12:54:32 +00:00
Venkatraman Govindaraju
8ce290e5fa
[SparcV9] Handle i64 <-> float conversions in sparcv9 mode.
...
llvm-svn: 193957
2013-11-03 12:28:40 +00:00
Benjamin Kramer
f45bcf5480
SLPVectorizer: When CSEing generated gathers only scan blocks containing them.
...
Instead of doing a RPO traversal of the whole function remember the blocks
containing gathers (typically <= 2) and scan them in dominator-first order.
The actual CSE is still quadratic, but I'm not confident that adding a
scoped hash table here is worth it as we're only looking at the generated
instructions and not arbitrary code.
llvm-svn: 193956
2013-11-03 12:27:52 +00:00
David Majnemer
2bbbbaaeee
Revert "Inliner: Handle readonly attribute per argument when adding memcpy"
...
This reverts commit r193356, it caused PR17781.
A reduced test case covering this regression has been added to the test suite.
llvm-svn: 193955
2013-11-03 12:22:13 +00:00
David Majnemer
fbb2338856
Spell "Actual" correctly
...
llvm-svn: 193954
2013-11-03 11:09:39 +00:00
Peter Zotov
47beae7a65
[OCaml] Implement Llvm.MemoryBuffer.{of_string,as_string}
...
llvm-svn: 193953
2013-11-03 08:27:45 +00:00
Peter Zotov
57d8f2c2e9
[OCaml] Fix ABI incompatibility
...
OCaml's type unit is not compatible with C's type void.
llvm-svn: 193952
2013-11-03 08:27:37 +00:00
Peter Zotov
aa2a604cf0
[OCaml] Implement Llvm_linker, bindings for the IR linker
...
llvm-svn: 193951
2013-11-03 08:27:32 +00:00
Peter Zotov
2aba543196
[OCaml] Implement Llvm_vectorize bindings
...
llvm-svn: 193950
2013-11-03 08:27:22 +00:00
Peter Zotov
f087cf7094
[OCaml] Refactor Llvm_target tests
...
Llvm_target tests did not check for return values. This actually
caused them to miss a bug.
llvm-svn: 193949
2013-11-03 08:27:13 +00:00
Peter Zotov
500cb8d4ee
[OCaml] Llvm_target: fix typo (Int_val instead of Int64_val)
...
llvm-svn: 193948
2013-11-03 08:27:08 +00:00
Venkatraman Govindaraju
1b0f7d035d
[Sparc] Expand FP_TO_UINT, UINT_TO_FP for fp128.
...
llvm-svn: 193947
2013-11-03 08:00:19 +00:00
Peter Zotov
9e58e5ad83
[OCaml] Llvm_scalar_opts: add missing transforms
...
llvm-svn: 193946
2013-11-03 07:54:17 +00:00
Peter Zotov
d9e82e73c8
[OCaml] Llvm_ipo: add missing transforms
...
llvm-svn: 193945
2013-11-03 07:54:08 +00:00
Bob Wilson
eb7943100b
Convert calls to __sinpi and __cospi into __sincospi_stret
...
This adds an SimplifyLibCalls case which converts the special __sinpi and
__cospi (float & double variants) into a __sincospi_stret where appropriate to
remove duplicated work.
Patch by Tim Northover
llvm-svn: 193943
2013-11-03 06:48:38 +00:00
Bob Wilson
f7bb300deb
Enable optimization of sin / cos pair into call to __sincos_stret for iOS7+.
...
rdar://12856873
Patch by Evan Cheng, with a fix for rdar://13209539 by Tilmann Scheller
llvm-svn: 193942
2013-11-03 06:14:38 +00:00
Venkatraman Govindaraju
c60684ae6f
[SparcV9] Add ctpop instruction for i64. Also, expand ctlz, cttz and bswap.
...
llvm-svn: 193941
2013-11-03 05:59:07 +00:00
Bob Wilson
a6dc8812c7
Configure with --enable-terminfo=no for Apple's llvmCore builds.
...
Patch by Pete Cooper.
llvm-svn: 193940
2013-11-03 05:49:36 +00:00
Filip Pizlo
aba5b5499b
Add a comment to note that LLVMDisablePrettyStackTrace() is likely not a good long-term solution.
...
llvm-svn: 193939
2013-11-03 04:38:31 +00:00
Filip Pizlo
8196f96988
When LLVM is embedded in a larger application, it's not OK for LLVM to intercept crashes. LLVM already has
...
the ability to disable this functionality. This patch exposes it via the C API.
llvm-svn: 193937
2013-11-03 00:29:47 +00:00
Rafael Espindola
3c7f6cf61c
move getSymbolNMTypeChar to the one program that needs it: nm.
...
llvm-svn: 193933
2013-11-02 21:16:09 +00:00
Rafael Espindola
844544bbd9
Convert another use of getSymbolNMTypeChar.
...
llvm-svn: 193932
2013-11-02 20:10:07 +00:00
Rafael Espindola
de649da692
Avoid some getSymbolNMTypeChar uses in COFFObjectFile.cpp itself.
...
This is a fixed version of 193928 which keeps these uses in sync.
llvm-svn: 193931
2013-11-02 18:07:48 +00:00
Rafael Espindola
0380ceeb65
Revert "Don't use getSymbolNMTypeChar for implementing COFFObjectFile::getSymbolFileOffset."
...
Investigating a bot failure.
This reverts commit r193928.
llvm-svn: 193929
2013-11-02 17:12:49 +00:00
Rafael Espindola
fc3d69f14a
Don't use getSymbolNMTypeChar for implementing COFFObjectFile::getSymbolFileOffset.
...
llvm-svn: 193928
2013-11-02 16:55:21 +00:00
Benjamin Kramer
ae919396b6
SLPVectorizer: Remove duplicated function.
...
llvm-svn: 193927
2013-11-02 14:46:27 +00:00
Benjamin Kramer
abc7baa1dc
LoopVectorize: Remove quadratic behavior the local CSE.
...
Doing this with a hash map doesn't change behavior and avoids calling
isIdenticalTo O(n^2) times. This should probably eventually move into a utility
class shared with EarlyCSE and the limited CSE in the SLPVectorizer.
llvm-svn: 193926
2013-11-02 13:39:00 +00:00
Rafael Espindola
29823465a8
A better fix that also works on ppc: add a target tripple.
...
llvm-svn: 193915
2013-11-02 06:00:09 +00:00
Rafael Espindola
2978e6cc09
Fix this test to pass on darwin now that llvm-nm is working.
...
llvm-svn: 193914
2013-11-02 05:29:22 +00:00
Rafael Espindola
1506f61a81
Fix llvm-nm to mach OS X's nm on some tests.
...
There is still a long way to go for llvm-nm, but at least we now match
nm's letter output in the cases we test for.
llvm-svn: 193912
2013-11-02 05:03:24 +00:00
Michael Liao
ae9a5c1116
Fix PR17764
...
- When selecting BLEND from vselect, the operands need swapping as due to the
difference between vselect and SSE/AVX's BLEND insn
llvm-svn: 193900
2013-11-02 00:10:02 +00:00
Yuchen Wu
c01bdb27f5
Added command-line option to output llvm-cov to file.
...
Added -o option to llvm-cov. If no output file is specified, it defaults
to STDOUT.
llvm-svn: 193899
2013-11-02 00:09:17 +00:00
Arnold Schwaighofer
fed0c4f8e8
LoopVectorizer: Move cse code into its own function
...
llvm-svn: 193895
2013-11-01 23:28:54 +00:00
Eric Christopher
f77453e16f
Comment some and reformat for clarity beginFunction.
...
llvm-svn: 193894
2013-11-01 23:14:17 +00:00
David Blaikie
aa11319eaa
DebugInfo: regenerate test case from Clang to adjust for fixes/improvements
...
I hit some problems with future work due to the member subprogram of
'a_b's type having a subprogram (an implicit default ctor, !52 in the
pre-commit source) with no name. Clang now generates a name for such a
function but in this case doesn't even emit debug info for it as it is
unused (Clang never emits the body of the ctor, instead just emitting
memset if needed).
llvm-svn: 193892
2013-11-01 22:29:28 +00:00