| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 220955
|
| |
|
|
|
|
| |
name. Remove a typedef that matches an identical one in the clang namespace.
llvm-svn: 220954
|
| |
|
|
| |
llvm-svn: 220953
|
| |
|
|
|
|
|
| |
Do a better job classifying symbols. This increases the consistency
between the COFF handling code and the ELF side of things.
llvm-svn: 220952
|
| |
|
|
| |
llvm-svn: 220951
|
| |
|
|
| |
llvm-svn: 220949
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
better output when we don't have any symbol name.
It looked like this:
0x1097fd029 <ud2
0x1097fd02b <addb %al, (%rax)
now, like this:
0x10cdd3064: ud2
0x10cdd3066: addb %al, (%rax)
<rdar://problem/18833391>
llvm-svn: 220948
|
| |
|
|
| |
llvm-svn: 220947
|
| |
|
|
|
|
|
|
| |
vdup_n_p64/vdup_n_p64.
As this change is too small, commit it directly.
llvm-svn: 220946
|
| |
|
|
|
|
| |
Initial patch by Oleg Ranevskyy.
llvm-svn: 220945
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This adds preliminary support for PowerPC/PowerPC64, for FreeBSD. There are
some issues still:
* Breakpoints don't work well on powerpc64.
* Shared libraries don't yet get loaded for a 32-bit process on powerpc64 host.
* Backtraces don't work. This is due to PowerPC ABI using a backchain pointer
in memory, instead of a dedicated frame pointer register for the backchain.
* Breakpoints on functions without debug info may not work correctly for 32-bit
powerpc.
Reviewers: emaste, tfiala, jingham, clayborg
Reviewed By: clayborg
Subscribers: emaste, lldb-commits
Differential Revision: http://reviews.llvm.org/D5988
llvm-svn: 220944
|
| |
|
|
|
|
| |
unit, allow the -O settings of the two compilations to differ.
llvm-svn: 220943
|
| |
|
|
|
|
| |
rather than simply pretty-printing it.
llvm-svn: 220942
|
| |
|
|
|
|
| |
[-Wdocumentation]
llvm-svn: 220941
|
| |
|
|
| |
llvm-svn: 220940
|
| |
|
|
|
|
|
|
|
|
| |
The former name doesn't make sense, we are using this parameter for both .a and .dylib libraries.
No functional change.
http://reviews.llvm.org/D6040
llvm-svn: 220939
|
| |
|
|
|
|
| |
<rdar://problem/18806212>
llvm-svn: 220938
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r212242 introduced a legalizer hook, originally to let AArch64 widen
v1i{32,16,8} rather than scalarize, because the legalizer expected, when
scalarizing the result of a conversion operation, to already have
scalarized the operands. On AArch64, v1i64 is legal, so that commit
ensured operations such as v1i32 = trunc v1i64 wouldn't assert.
It did that by choosing to widen v1 types whenever possible. However,
v1i1 types, for which there's no legal widened type, would still trigger
the assert.
This commit fixes that, by only scalarizing a trunc's result when the
operand has already been scalarized, and introducing an extract_elt
otherwise.
This is similar to r205625.
Fixes PR20777.
llvm-svn: 220937
|
| |
|
|
| |
llvm-svn: 220936
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: This is a fix for the command line syntax error while building LTO when using MinGW.
Patch By: jsroemer
Reviewers: rnk
Reviewed By: rnk
Subscribers: rnk, beanz, llvm-commits
Differential Revision: http://reviews.llvm.org/D5476
llvm-svn: 220935
|
| |
|
|
|
|
| |
check locale-aware message catalog.
llvm-svn: 220934
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Earlier this summer I fixed an issue where we were incorrectly combining
multiple loads that had different constraints such alignment, invariance,
temporality, etc. Apparently in one case I made copt paste error and swapped
alignment and invariance.
Tests included.
rdar://18816719
llvm-svn: 220933
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to initialize the ManagedStatic mutex.
Summary:
This patch adds an llvm_call_once which is a wrapper around std::call_once on platforms where it is available and devoid of bugs. The patch also migrates the ManagedStatic mutex to be allocated using llvm_call_once.
These changes are philosophically equivalent to the changes added in r219638, which were reverted due to a hang on Win32 which was the result of a bug in the Windows implementation of std::call_once.
Reviewers: aaron.ballman, chapuni, chandlerc, rnk
Reviewed By: rnk
Subscribers: majnemer, llvm-commits
Differential Revision: http://reviews.llvm.org/D5922
llvm-svn: 220932
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 220931
|
| |
|
|
|
|
|
|
|
|
|
| |
Instead of manually maintaining a flag indicating whether we're about to print
out the last child of the parent node (to determine whether we print "`" or
"|"), capture a callable to print that child and defer printing it until we
either see a next child or finish the parent.
No functionality change intended.
llvm-svn: 220930
|
| |
|
|
|
|
| |
This renames a few things that are using an unusual naming convention.
llvm-svn: 220929
|
| |
|
|
|
|
|
|
| |
We're using cl::opt here, but for some reason we're reading out one
particular option by hand instead. This makes -help and the like
behave rather poorly, so let's not do it this way.
llvm-svn: 220928
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The langref says:
LLVM explicitly allows declarations of global variables to be marked
constant, even if the final definition of the global is not. This
capability can be used to enable slightly better optimization of the
program, but requires the language definition to guarantee that
optimizations based on the ‘constantness’ are valid for the
translation units that do not include the definition.
Given that definition, when merging two declarations, we have to drop
constantness if of of them is not marked contant, since the Module
without the constant marker might not have the necessary guarantees.
llvm-svn: 220927
|
| |
|
|
| |
llvm-svn: 220926
|
| |
|
|
|
|
|
|
|
|
|
| |
If we load from a location with range metadata, we can use information about the ranges of the loaded value for optimization purposes. This helps to remove redundant checks and canonicalize checks for other optimization passes. This particular patch checks whether a value is known to be non-zero from the range metadata.
Currently, these tests are against InstCombine. In theory, all of these should be InstSimplify since we're not inserting any new instructions. Moving the code may follow in a separate change.
Reviewed by: Hal
Differential Revision: http://reviews.llvm.org/D5947
llvm-svn: 220925
|
| |
|
|
| |
llvm-svn: 220924
|
| |
|
|
|
|
| |
when inlining two calls to the same function from the same call site.
llvm-svn: 220923
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 220922
|
| |
|
|
|
|
| |
Also it wasn't being used anyway, so it appears to be a dead include.
llvm-svn: 220921
|
| |
|
|
|
|
|
|
|
| |
SanitizerOptions is not even a POD now, so having global variable of
this type, is not nice. Instead, provide a regular constructor and clear()
method, and let each CodeGenFunction has its own copy of SanitizerOptions
it uses.
llvm-svn: 220920
|
| |
|
|
| |
llvm-svn: 220919
|
| |
|
|
|
|
|
| |
This fixes the autobuilders I broke with a recent patch. Thanks echristo
and dblaikie for beating me with a clue stick.
llvm-svn: 220918
|
| |
|
|
|
|
| |
StringPrinter API
llvm-svn: 220917
|
| |
|
|
|
|
|
| |
These are used to reference typeinfo data in the exception table section, for
example.
llvm-svn: 220916
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch finishes up support for handling sampling profiles in both
text and binary formats. The new binary format uses uleb128 encoding to
represent numeric values. This makes profiles files about 25% smaller.
The profile writer class can write profiles in the existing text and the
new binary format. In subsequent patches, I will add the capability to
read (and perhaps write) profiles in the gcov format used by GCC.
Additionally, I will be adding support in llvm-profdata to manipulate
sampling profiles.
There was a bit of refactoring needed to separate some code that was in
the reader files, but is actually common to both the reader and writer.
The new test checks that reading the same profile encoded as text or
raw, produces the same results.
Reviewers: bogner, dexonsmith
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6000
llvm-svn: 220915
|
| |
|
|
|
|
|
| |
After r220894 (StringPrinter change) it is no longer emitted. Update the
test rather than considering it a bug as the new format is preferred.
llvm-svn: 220914
|
| |
|
|
|
|
|
|
|
| |
It should be on for every target that supports unaligned accesses (e.g. not
v6m).
Patch by Charlie Turner.
llvm-svn: 220912
|
| |
|
|
| |
llvm-svn: 220911
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 220910
|
| |
|
|
| |
llvm-svn: 220909
|
| |
|
|
|
|
|
| |
Refactored through AVX512_maskable
llvm-svn: 220908
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D6029
llvm-svn: 220907
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The previous calling convention prevented custom functions from being able
to access argument labels unless it knew how many variadic arguments there
were, and of which type. This restriction made it impossible to correctly
model functions in the printf family, as it is legal to pass more arguments
than required to those functions. We now pass arguments in the following order:
non-vararg arguments
labels for non-vararg arguments
[if vararg function, pointer to array of labels for vararg arguments]
[if non-void function, pointer to label for return value]
vararg arguments
Differential Revision: http://reviews.llvm.org/D6028
llvm-svn: 220906
|
| |
|
|
|
|
| |
From Per Viberg to Daniel Marjamäki.
llvm-svn: 220905
|
| |
|
|
|
|
| |
libclang.dll.
llvm-svn: 220904
|