| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 221161
|
| |
|
|
|
|
|
|
|
|
|
| |
Trying to import or export such classes doesn't make sense, and Clang
would assert trying to export vtables for them.
This is consistent with how we treat functions with internal linkage,
but it is stricter than MSVC so we may have to back down if it breaks
real code.
llvm-svn: 221160
|
| |
|
|
|
|
|
| |
This should silence the buildbots until we understand if the clang-format
changes in r221125 have been intentional. See reply on cfe-commits for details.
llvm-svn: 221159
|
| |
|
|
|
|
|
|
|
| |
This reverts commit b5bdb2ef59ab922bcb4d6e843fffaee1f7f68a8c.
This doesn't really seem necessary on second though and causes problems
with C++ enum formatting.
llvm-svn: 221158
|
| |
|
|
|
|
|
| |
Some literals in the AArch64 backend had 15 'f's rather than 16, causing
comparisons with a constant 0xffffffffffffffff to be miscompiled.
llvm-svn: 221157
|
| |
|
|
|
|
|
|
|
| |
Hexagon was not calling InitializeELF and could not select between
ctors and init_array.
Phabricator revision: http://reviews.llvm.org/D6061
llvm-svn: 221156
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
test/MC/ARM/directive-eabi_attribute.s had gotten out-of-sync with
test/MC/ARM/directive-eabi_attribute-2.s. The former tests the encoding of
build attributes in object files, and the latter the encoding in assembly
files. Since both these tests need to be updated at the same time, it makes
sense to combine them into a single test. The object file encodings are being
checked against the ouput of -arm-attributes rather than by direct byte
comparisons which makes for easier reading.
Change-Id: I0075de506ae5626fb2fa235383fe5ce6a65a15a9
llvm-svn: 221155
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It turns out that MinGW never dllimports of exports inline functions.
This means that code compiled with Clang would fail to link with
MinGW-compiled libraries since we might try to import functions that
are not imported.
To fix this, make Clang never dllimport inline functions when targeting
MinGW.
llvm-svn: 221154
|
| |
|
|
|
|
|
| |
The MRI scripts have to work with CRLF, and in general it is probably
a good idea to support this in a core utility like LineIterator.
llvm-svn: 221153
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Added -fix-errors option to allow applying fixes when compiler errors
are present. Without this flag -fix would bail out if there are compiler errors.
This is needed to avoid applying wrong fixes if Clang fails to recover from
compilation errors correctly.
Reviewers: djasper, klimek
Reviewed By: klimek
Subscribers: curdeius, cfe-commits
Differential Revision: http://reviews.llvm.org/D6059
llvm-svn: 221152
|
| |
|
|
| |
llvm-svn: 221151
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When LLVM emits DWARF call frame information, it currently creates a local,
section-relative symbol in the code section, which is pointed to by a
relocation on the .eh_frame section. However, for C++ we emit some functions in
section groups, and the SysV ABI has some rules to make it easier to remove
these sections
(http://www.sco.com/developers/gabi/latest/ch4.sheader.html#section_group_rules):
A symbol table entry with STB_LOCAL binding that is defined relative to one
of a group's sections, and that is contained in a symbol table section that is
not part of the group, must be discarded if the group members are discarded.
References to this symbol table entry from outside the group are not allowed.
This means that we need to use the function symbol for the relocation, not a
temporary symbol.
There was a comment in the code claiming that the local symbol was used to
avoid creating a relocation, but a relocation must be created anyway as the
code and CFI are in different sections.
llvm-svn: 221150
|
| |
|
|
|
|
|
| |
Also, revert r221142--it was an incorrect fix to this bug
which fixed tests by accident.
llvm-svn: 221149
|
| |
|
|
|
|
|
| |
Fixes two typos.
Change-Id: I129f647de8933e1d8f0dc9941bcb91602edce7e2
llvm-svn: 221148
|
| |
|
|
|
|
|
| |
This is required by the interpreter library, and also matches the autoconf
behavior.
llvm-svn: 221147
|
| |
|
|
| |
llvm-svn: 221146
|
| |
|
|
|
|
| |
Thanks echristo for pointing this out.
llvm-svn: 221145
|
| |
|
|
|
|
| |
A bug in lit.cfg was introduced in r221137.
llvm-svn: 221144
|
| |
|
|
| |
llvm-svn: 221143
|
| |
|
|
|
|
| |
On 4.02, the OCaml unwinder otherwise gets confused and segfaults.
llvm-svn: 221142
|
| |
|
|
| |
llvm-svn: 221141
|
| |
|
|
| |
llvm-svn: 221140
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Bindings built out-of-tree, e.g. via OPAM, should append
a line to META.llvm like the following:
linkopts = "-cclib -L$libdir -cclib -Wl,-rpath,$libdir"
where $libdir is the lib/ directory where LLVM libraries are
installed.
llvm-svn: 221139
|
| |
|
|
|
|
|
| |
The default Makefile.rules BUILD_ARCHIVE machinery was
unintentionally enabled.
llvm-svn: 221138
|
| |
|
|
|
|
|
|
|
|
| |
ocamlc and ocamlopt expose a distinct set of buildsystem bugs, e.g.
only ocamlc would detect -custom or -dllib-related bugs, and as all
buildbots will have ocamlopt, these bugs will stay hidden.
This change should add no more than 30 seconds of testing time.
llvm-svn: 221137
|
| |
|
|
|
|
|
| |
ocamlfind ignores the predicates in this case, making the package
unavailable for batch compilation as well.
llvm-svn: 221136
|
| |
|
|
|
|
| |
Interpreter support was removed in r220957.
llvm-svn: 221135
|
| |
|
|
| |
llvm-svn: 221134
|
| |
|
|
|
|
| |
Add support in the vtable dumper for the Itanium ABI.
llvm-svn: 221133
|
| |
|
|
| |
llvm-svn: 221132
|
| |
|
|
|
|
| |
in alphabetical order.
llvm-svn: 221131
|
| |
|
|
| |
llvm-svn: 221130
|
| |
|
|
|
|
|
|
| |
This implements the transformation from (X | Y) - X to (~X & Y).
Differential Revision: http://reviews.llvm.org/D5791
llvm-svn: 221129
|
| |
|
|
|
|
|
| |
Number parsing functions used an ErrorOr<> idiom that is not supported in
MSVC2012. This patch fixes this.
llvm-svn: 221128
|
| |
|
|
|
|
| |
intrinsic headers. Add a run line with Broadwell as the cpu type to ms-intrin.cpp test to catch some of these in the future.
llvm-svn: 221127
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch does *not* implement any semantic actions, but it is a first step to
teach LLD how to read complete linker scripts. The additional linker scripts
statements whose parsing is now supported are:
* SEARCH_DIR directive
* SECTIONS directive
* Symbol definitions inside SECTIONS including PROVIDE and PROVIDE_HIDDEN
* C-like expressions used in many places in linker scripts
* Input to output sections mapping
The goal of this commit was guided towards completely parsing a default GNU ld
linker script and the linker script used to link the FreeBSD kernel. Thus, it
also adds a test case based on the default linker script used in GNU ld for
x86_64 ELF targets. I tested SPEC userland programs linked by GNU ld, using the
linker script dump'ed by this parser, and everything went fine. I then tested
linking the FreeBSD kernel with a dump'ed linker script, installed the new
kernel and booted it, everything went fine.
Directives that still need to be implemented:
* MEMORY
* PHDRS
Reviewers: silvas, shankarke and ruiu
http://reviews.llvm.org/D5852
llvm-svn: 221126
|
| |
|
|
|
|
|
|
|
|
|
| |
Before:
enum SomeThing { ABC, CDE }
;
After:
enum SomeThing { ABC, CDE };
llvm-svn: 221125
|
| |
|
|
|
|
|
|
|
|
| |
Before:
< T extends B > T getInstance(Class<T> type);
After:
<T extends B> T getInstance(Class<T> type);
llvm-svn: 221124
|
| |
|
|
|
|
| |
DwarfCompileUnit.
llvm-svn: 221123
|
| |
|
|
|
|
|
|
|
|
| |
Before:
public static<R> ArrayList<R> get() {}
After:
public static <R> ArrayList<R> get() {}
llvm-svn: 221122
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
@SomeAnnotation()
abstract
class aaaaaaaaaaaa extends bbbbbbbbbbbbbbb implements cccccccccccc {
}
After:
@SomeAnnotation()
abstract class aaaaaaaaaaaa extends bbbbbbbbbbbbbbb
implements cccccccccccc {
}
llvm-svn: 221121
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
As discussed in
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20141027/242445.html,
the creation of reader and writer instances is better done using
ErrorOr. There are no functional changes, but several callers needed to
be adjusted.
Reviewers: bogner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6076
llvm-svn: 221120
|
| |
|
|
| |
llvm-svn: 221119
|
| |
|
|
| |
llvm-svn: 221118
|
| |
|
|
|
|
|
|
|
| |
The problem is mostly that variadic output instruction
aren't handled, so it is rejected for having an inconsistent
number of operands, and then the right number of operands
isn't emitted.
llvm-svn: 221117
|
| |
|
|
| |
llvm-svn: 221116
|
| |
|
|
| |
llvm-svn: 221115
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Before:
delete [] a -> b;
After:
delete[] a->b;
This fixes part of llvm.org/PR21419.
llvm-svn: 221114
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
class SomeClass {
enum SomeThing { ABC, CDE } void f() {
}
}
After:
class SomeClass {
enum SomeThing { ABC, CDE }
void f() {
}
}
This fixed llvm.org/PR21458.
llvm-svn: 221113
|
| |
|
|
|
|
| |
This fixes llvm.org/PR21453.
llvm-svn: 221112
|