| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 326511
|
| |
|
|
|
|
|
|
| |
I forgot that I added tests for 'reassoc' to -reassociate, but
suprisingly that file calls -instcombine too, so it is affected.
I'll update that file and try again.
llvm-svn: 326510
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D43966
llvm-svn: 326509
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Original change:
[NFC] Move CommentOpts checks to the call sites that depend on it.
When parsing comments, for example, for -Wdocumentation, slightly different
behaviour occurs when -fparse-all-comments is specified. However, these
differences are subtle:
1. All comments are saved during parsing, regardless of whether they are doc comments or not.
2. "Maybe-doc" comments, like //<, //!, etc, are saved as such, instead of marking them as ordinary comments. The maybe-doc type of comment is never saved otherwise. (Warning on these is the impetus of -Wdocumentation.)
3. All comments are treated as doc comments in ASTContext, even if they are ordinary.
This change moves the logic for checking CommentOptions.ParseAllComments closer
to where it has an effect. The overall logic is unchanged, but checks of the
ParseAllComments flag are now done where the effect will be clearer.
llvm-svn: 326508
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It is a usage error to feed a .dll file instead of a .dll to COFF linker.
Previously, lld failed with a mysterious error message. Now we reject
it at the driver.
Fixes https://bugs.llvm.org/show_bug.cgi?id=36440
Differential Revision: https://reviews.llvm.org/D43964
llvm-svn: 326507
|
| |
|
|
|
|
|
|
|
| |
GNU linkers by convention supports both `--foo bar` and `--foo=bar` styles
for all long options that take arguments.
Differential Revision: https://reviews.llvm.org/D43972
llvm-svn: 326506
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit e4507fb8c94b ("bpf: disable DwarfUsesRelocationsAcrossSections")
disables MCAsmInfo DwarfUsesRelocationsAcrossSections unconditionally
so that dwarf will not use cross section (between dwarf and symbol table)
relocations. This new debug format enables pahole to dump structures
correctly as libdwarves.so does not have BPF backend support yet.
This new debug format, however, breaks bcc (https://github.com/iovisor/bcc)
source debug output as llvm in-memory Dwarf support has some issues to
handle it. More specifically, with DwarfUsesRelocationsAcrossSections
disabled, JIT compiler does not generate .debug_abbrev and Dwarf
DIE (debug info entry) processing is not happy about this.
This patch introduces a new flag -mattr=dwarfris
(dwarf relocation in section) to disable DwarfUsesRelocationsAcrossSections.
DwarfUsesRelocationsAcrossSections is true by default.
Signed-off-by: Yonghong Song <yhs@fb.com>
llvm-svn: 326505
|
| |
|
|
| |
llvm-svn: 326504
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
If an executable needs text relocations, it should be marked as such so
that the loader can prepare for text relocations. We currently create a
dummy segment with DT_TEXTREL for that purpose.
Generic ABI as of 2000 [1] mentioned that "Its [DT_TEXTREL's] use
has been superseded by the DF_TEXTREL flag". However, it's actually not
superseded even after 18 years. OpenBSD and musl recognize only DT_TEXTREL.
So we still need to set both.
[1] http://www.sco.com/developers/gabi/2000-07-17/ch5.dynamic.html
Reviewers: rafael
Subscribers: emaste, llvm-commits, arichardson
Differential Revision: https://reviews.llvm.org/D43920
llvm-svn: 326503
|
| |
|
|
| |
llvm-svn: 326502
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When parsing comments, for example, for -Wdocumentation, slightly different
behaviour occurs when -fparse-all-comments is specified. However, these
differences are subtle:
1. All comments are saved during parsing, regardless of whether they are doc
comments or not.
2. "Maybe-doc" comments, like //<, //!, etc, are saved as such, instead of
marking them as ordinary comments. The maybe-doc type of comment is never
saved otherwise. (Warning on these is the impetus of -Wdocumentation.)
3. All comments are treated as doc comments in ASTContext, even if they are
ordinary.
This change moves the logic for checking CommentOptions.ParseAllComments closer
to where it has an effect. The overall logic is unchanged, but checks of the
ParseAllComments flag are now done where the effect will be clearer.
Reviewers: rsmith
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D43663
llvm-svn: 326501
|
| |
|
|
|
|
|
|
|
|
| |
extending for vectors.
Masking first, prevents the extend from being combine with loads. Its also interfering with some vXi1 extraction code.
Differential Revision: https://reviews.llvm.org/D42679
llvm-svn: 326500
|
| |
|
|
|
|
|
|
|
|
| |
Since LLVM r326341, default EmulatedTLS mode is decided in backend
according to target triple. Any front-end should pass -f[no]-emulated-tls
to backend and set up ExplicitEmulatedTLS only when the flags are used.
Differential Revision: https://reviews.llvm.org/D43965
llvm-svn: 326499
|
| |
|
|
| |
llvm-svn: 326498
|
| |
|
|
|
|
|
|
|
|
|
|
| |
64-bit MMX constant generation usually ends up lowering into SSE instructions before being spilled/reloaded as a MMX type.
This patch bitcasts the constant to a double value to allow correct loading directly to the MMX register.
I've added MMX constant asm comment support to improve testing, it's better to always print the double values as hex constants as MMX is mainly an integer unit (and even with 3DNow! its just floats).
Differential Revision: https://reviews.llvm.org/D43616
llvm-svn: 326497
|
| |
|
|
|
|
| |
if the other definition is a merged copy of the same function.
llvm-svn: 326496
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
splats of constants.
This supports things like
(setcc ugt X, 0) -> (setcc ne X, 0)
I've restricted to only make changes to vectors before legalize ops because I doubt all targets have accurate condition code legality information for vectors given how little we did before.
Differential Revision: https://reviews.llvm.org/D42948
llvm-svn: 326495
|
| |
|
|
| |
llvm-svn: 326494
|
| |
|
|
|
|
|
|
| |
introduction on the front page page.
We still use the lowercase "clang" spelling when referring to the driver binary.
llvm-svn: 326493
|
| |
|
|
| |
llvm-svn: 326492
|
| |
|
|
|
|
| |
rdar://problem/37963669
llvm-svn: 326491
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326490
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326489
|
| |
|
|
| |
llvm-svn: 326488
|
| |
|
|
|
|
|
|
|
| |
This crashes for some opcodes, which prevents the SelectionDAG
fallback from working.
Patch by Tom Stellard
llvm-svn: 326487
|
| |
|
|
|
|
|
| |
Clean up a couple of functions in `AArch64TargetLowering` by removing
redundant statements.
llvm-svn: 326486
|
| |
|
|
| |
llvm-svn: 326485
|
| |
|
|
| |
llvm-svn: 326484
|
| |
|
|
|
|
|
|
|
| |
This was finding the wrong size registers for anything with
more than 2 components.
Patch by Tom Stellard
llvm-svn: 326483
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326482
|
| |
|
|
| |
llvm-svn: 326481
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D43288
llvm-svn: 326480
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326479
|
| |
|
|
|
|
|
|
| |
Currently --start-group=foo is accidentally accepted by the MinGW driver.
Differential Revision: https://reviews.llvm.org/D43836
llvm-svn: 326478
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326477
|
| |
|
|
|
|
|
|
|
|
| |
Make types with sizes that aren't a power of two an error (that can
be disabled) in structs with ms_struct layout, except on mingw where
the situation is quite likely to occur and GCC handles it silently.
Differential Revision: https://reviews.llvm.org/D43908
llvm-svn: 326476
|
| |
|
|
|
|
| |
match this file. NFC
llvm-svn: 326475
|
| |
|
|
| |
llvm-svn: 326474
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326472
|
| |
|
|
| |
llvm-svn: 326471
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326470
|
| |
|
|
|
|
|
|
| |
This is needed for building with the GNU driver (`clang++`) when
targeting Windows and using msvcprt. This flag is the equivalent of
`/GR-`.
llvm-svn: 326469
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326468
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326467
|
| |
|
|
| |
llvm-svn: 326466
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326465
|
| |
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326464
|
| |
|
|
|
|
|
|
|
| |
The argument is section=address, not just address.
(For compatibility with GNU linkers we need to, but do not yet, accept
--section-start=section=address.)
llvm-svn: 326463
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Don't enable c++-temp-dtor-inlining by default yet, due to this reference
counting pointe problem.
Otherwise the new mode seems stable and allows us to incrementally fix C++
problems in much less hacky ways.
Differential Revision: https://reviews.llvm.org/D43804
llvm-svn: 326461
|
| |
|
|
|
|
|
| |
The gcc builders were broken by rL326454
See: https://reviews.llvm.org/D43921
llvm-svn: 326460
|