| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Based on the following discussion:
http://llvm.1065342.n5.nabble.com/LLVM-3-4-stable-releases-td65005.html
llvm-svn: 200772
|
| |
|
|
|
|
| |
rdar://problem/13729466
llvm-svn: 200771
|
| |
|
|
|
|
|
|
| |
There was an extremely confusing proliferation of LLVM intrinsics to implement
the vacge & vacgt instructions. This combines them all into two polymorphic
intrinsics, shared across both backends.
llvm-svn: 200768
|
| |
|
|
|
|
| |
Patch thanks to Stephan Tolksdorf!
llvm-svn: 200767
|
| |
|
|
|
|
|
|
| |
CMake's target_link_libraries() will manage dependencies.
Configuration time may be reduced by a few seconds.
llvm-svn: 200765
|
| |
|
|
|
|
| |
introduce llvm_map_components_to_libnames and llvm_expand_dependencies.
llvm-svn: 200764
|
| |
|
|
| |
llvm-svn: 200763
|
| |
|
|
|
|
|
|
|
| |
In trunk, every users assume add_llvm_loadable_module as "loadable module" and no one sets neither SHARED, ... nor also MODULE!
Unfortunately, all loadable modules were linked as not "MODULE" but "SHARED".
If this change caused any regressions, I wish guys to fix it properly. ;)
llvm-svn: 200762
|
| |
|
|
|
|
| |
build LLD.
llvm-svn: 200758
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Until now, when a path in a gcno file included a directory, we would
emit our .gcov file in that directory, whereas gcov always emits the
file in the current directory. In doing so, this implements gcov's
strange name-mangling -p flag, which is needed to avoid clobbering
files when two with the same name exist in different directories.
The path mangling is a bit ugly and only handles unix-like paths, but
it's simple, and it doesn't make any guesses as to how it should
behave outside of what gcov documents. If we decide this should be
cross platform later, we can consider the compatibility implications
then.
llvm-svn: 200754
|
| |
|
|
|
|
|
|
|
| |
Missing braces on if meant we inserted both ARM and Thumb load for a litpool
entry. This didn't end well.
rdar://problem/15959157
llvm-svn: 200752
|
| |
|
|
|
|
| |
-fno-function-sections in a different way.
llvm-svn: 200745
|
| |
|
|
|
|
|
|
|
|
|
|
| |
header search
If LLVM_ENABLE_LIBCXX is specified, we should append -stdlib=libc++ to build
flags as early as possible, in particular, before we check for header presence
(as -stdlib=libc++ modifies header lookup rules). Otherwise we can find a header
at configure time (w/o -stdlib=libc++) but fail to find it at build time
(with -stdlib=libc++). See PR18569 for more details.
llvm-svn: 200744
|
| |
|
|
|
|
|
|
|
|
|
|
| |
V_ADD_F32 with source modifier does not produce -0.0 for this. Just
manipulate the sign bit directly instead.
Also add a pattern for (fneg (fabs ...)).
Fixes a bunch of bit encoding piglit tests with radeonsi.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 200743
|
| |
|
|
| |
llvm-svn: 200741
|
| |
|
|
|
|
|
|
| |
When gcov is run without gcda data, it acts as if the counts are all
zero and labels the file as - to indicate that there was no data. We
should do the same.
llvm-svn: 200740
|
| |
|
|
| |
llvm-svn: 200739
|
| |
|
|
|
|
| |
-mfpmath-dependent behavior.
llvm-svn: 200738
|
| |
|
|
|
|
|
| |
There seems to be a new problem with the debug info in the test case.
I'll have to investigate this.
llvm-svn: 200737
|
| |
|
|
|
|
|
|
| |
Add the missing transformation strchr(p, 0) -> p + strlen(p) to SimplifyLibCalls
and remove the ToDo comment.
Reviewer: Duncan P.N. Exan Smith
llvm-svn: 200736
|
| |
|
|
|
|
|
| |
This fixes PR18554.
Reviewers: Renato Golin, Keith Walker
llvm-svn: 200735
|
| |
|
|
|
|
|
|
|
|
|
| |
emits zero-length arrays as {i32 0}
A bunch of test cases needed to be cleaned up for this, many my fault -
when implementid imported modules I updated test cases by simply
duplicating the prior metadata field - which wasn't always the empty
metadata entry.
llvm-svn: 200731
|
| |
|
|
|
|
|
|
|
| |
include_directories()."
It missed include/llvm/Target. Could I avoid GLOB_RECURSE anyways? :(
FYI, I intended to prune ${LLVM_MAIN_INCLUDE_DIR} in TableGen.cmake in r200150.
llvm-svn: 200730
|
| |
|
|
| |
llvm-svn: 200727
|
| |
|
|
|
|
| |
care how many bytes you were trying to transfer. Sink that safety test after those transforms. Noticed by inspection.
llvm-svn: 200726
|
| |
|
|
|
|
|
|
|
|
|
|
| |
For some anachronistic reason we were producing {i32 0} for zero-length
debug info arrays.
(this change is paired with a Clang change and may cause temporary
buildbot noise)
Let's not.
llvm-svn: 200721
|
| |
|
|
| |
llvm-svn: 200720
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It disturbs the layout of the parameters in memory and registers,
leading to problems in the backend.
The plan for optimizing internal inalloca functions going forward is to
essentially SROA the argument memory and demote any captured arguments
(things that aren't trivially written by a load or store) to an indirect
pointer to a static alloca.
llvm-svn: 200717
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some of the SHA instructions take a scalar i32 as one argument (largely because
they work on 160-bit hash fragments). This wasn't reflected in the IR
previously, with ARM and AArch64 choosing different types (<4 x i32> and <1 x
i32> respectively) which was ugly.
This makes all the affected intrinsics take a uniform "i32", allowing them to
become non-polymorphic at the same time.
llvm-svn: 200706
|
| |
|
|
|
|
|
| |
ISD::BSWAP was missing from the list of node types that should be expanded
element-wise.
llvm-svn: 200705
|
| |
|
|
|
|
| |
No functional change intended.
llvm-svn: 200704
|
| |
|
|
| |
llvm-svn: 200699
|
| |
|
|
|
|
| |
This comment was copied over from another class in r34170, where it made sense.
llvm-svn: 200697
|
| |
|
|
|
|
|
|
|
| |
the compiler.
This will disable -ffunction-sections in older versions of Clang where it
breaks build of sanitizer runtime library.
llvm-svn: 200695
|
| |
|
|
|
|
|
|
| |
iteration. This alows the majority of operations to be performed without
encoding a specific small size. It follows the model of
SmallVectorImpl<T>.
llvm-svn: 200688
|
| |
|
|
|
|
|
|
|
|
|
| |
'SmallPtrSetImplBase'. This more closely matches the organization of
SmallVector and should allow introducing a SmallPtrSetImpl which serves
the same purpose as SmallVectorImpl: isolating the element type from the
particular small size chosen. This in turn allows a lot of
simplification of APIs by not coding them against a specific small size
which is rarely needed.
llvm-svn: 200687
|
| |
|
|
|
|
| |
AArch64Disassembler.cpp. None of the GET_ defines were set that would make the include do anything.
llvm-svn: 200677
|
| |
|
|
|
|
|
|
|
|
| |
LowerExpectIntrinsic previously only understood the idiom of an expect
intrinsic followed by a comparison with zero. For llvm.expect.i1, the
comparison would be stripped by the early-cse pass.
Patch by Daniel Micay.
llvm-svn: 200664
|
| |
|
|
|
|
| |
Patch from Matt Thomas.
llvm-svn: 200654
|
| |
|
|
|
|
| |
Suggested by Stephen Kelly.
llvm-svn: 200645
|
| |
|
|
| |
llvm-svn: 200644
|
| |
|
|
|
|
| |
[-Wdocumentation]
llvm-svn: 200628
|
| |
|
|
|
|
| |
meaning no 0x66 prefix in any mode. Rename Opsize16->OpSize32 and OpSize->OpSize16. The classes now refer to their operand size rather than the mode in which they need a 0x66 prefix. Hopefully can merge REX_W into this as OpSize64.
llvm-svn: 200626
|
| |
|
|
| |
llvm-svn: 200625
|
| |
|
|
|
|
| |
in TSFlags.
llvm-svn: 200624
|
| |
|
|
|
|
|
|
|
|
| |
As part of the cleanup done to enable the disassembler, the PPC instructions
now have a valid Size description field. This can now be used to replace some
custom logic in a few places to compute instruction sizes.
Patch by David Wiberg!
llvm-svn: 200623
|
| |
|
|
|
|
|
|
|
| |
unrolling heuristic per default
Benchmarking on x86_64 (thanks Chandler!) and ARM has shown those options speed
up some benchmarks while not causing any interesting regressions.
llvm-svn: 200621
|
| |
|
|
| |
llvm-svn: 200620
|
| |
|
|
|
|
|
|
| |
This didn't work for any integer vectors, and didn't
work with some sizes of float vectors. This should now
work with all sizes of float and i32 vectors.
llvm-svn: 200619
|
| |
|
|
|
|
| |
MCRegisterInfo. Also, add CFI instructions to initialize the frame correctly.
llvm-svn: 200617
|