| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This uses the new layout of the upstream repository, which was recently
migrated to GitHub, and converted into a "monorepo". That is, most of
the earlier separate sub-projects with their own branches and tags were
consolidated into one top-level directory, and are now branched and
tagged together.
Updating the vendor area to match this layout is next.
Notes:
svn path=/head/; revision=355940
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[RISCV] Add Custom Parser for Atomic Memory Operands
Summary:
GCC Accepts both (reg) and 0(reg) for atomic instruction memory
operands. These instructions do not allow for an offset in their
encoding, so in the latter case, the 0 is silently dropped.
Due to how we have structured the RISCVAsmParser, the easiest way to
add support for parsing this offset is to add a custom AsmOperand and
parser. This parser drops all the parens, and just keeps the
register.
This commit also adds a custom printer for these operands, which
matches the GCC canonical printer, printing both `(a0)` and `0(a0)`
as `(a0)`.
Reviewers: asb, lewis-revill
Reviewed By: asb
Subscribers: s.egerton, hiraditya, rbar, johnrusso, simoncook,
apazos, sabuasal, niosHD, kito-cheng, shiva0217, jrtc27, MaskRay,
zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o,
rkruppe, jfb, PkmX, jocewei, psnobl, benna, Jim, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65205
llvm-svn: 367553
Merge commit f596f4507 from llvm git (by Sam Elliott):
[RISCV] Add FreeBSD targets
Reviewers: asb
Reviewed By: asb
Subscribers: simoncook, s.egerton, lenary, psnobl, benna, mhorne,
emaste, kito-cheng, shiva0217, rogfer01, rkruppe, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D57795
Patch by James Clarke (jrtc27)
llvm-svn: 367557
Merge commit f596f4507 from llvm git (by Hsiangkai Wang):
[DebugInfo] Generate fixups as emitting DWARF .debug_frame/.eh_frame.
It is necessary to generate fixups in .debug_frame or .eh_frame as
relaxation is enabled due to the address delta may be changed after
relaxation.
There is an opcode with 6-bits data in debug frame encoding. So, we
also need 6-bits fixup types.
Differential Revision: https://reviews.llvm.org/D58335
llvm-svn: 366524
Merge commit f596f4507 from llvm git (by Hsiangkai Wang):
[DebugInfo] Some fields do not need relocations even relax is enabled.
In debug frame information, some fields, e.g., Length in CIE/FDE and
Offset in FDE are attributes to describe the structure of CIE/FDE.
They are not related to the relaxed code. However, these attributes
are symbol differences. So, in current design, these attributes will
be filled as zero and LLVM generates relocations for them.
We only need to generate relocations for symbols in executable
sections. So, if the symbols are not located in executable sections,
we still evaluate their values under relaxation.
Differential Revision: https://reviews.llvm.org/D61584
llvm-svn: 366531
Merge commit f596f4507 from llvm git (by Alex Bradbury):
[RISCV] Don't force absolute FK_Data_X fixups to relocs
The current behavior of shouldForceRelocation forces relocations for
the majority of fixups when relaxation is enabled. This makes sense
for fixups which incorporate symbols but is unnecessary for simple
data fixups where the fixup target is already resolved to an absolute
value.
Differential Revision: https://reviews.llvm.org/D63404
Patch by Edward Jones.
llvm-svn: 369257
Merge commit f596f4507 from llvm git (by Alex Bradbury):
[RISCV] Implement getExprForFDESymbol to ensure RISCV_32_PCREL is
used for the FDE location
Follow binutils in using RISCV_32_PCREL for the FDE initial location.
As explained in the relevant binutils commit
<https://github.com/riscv/riscv-binutils-gdb/commit/a6cbf936e3dce68114d28cdf60d510a3f78a6d40>,
the ADD/SUB pair of relocations is problematic in the presence of
linker relaxation.
This patch has the same end goal as D64715 but includes test changes
and avoids adding a new global VariantKind to MCExpr.h (preferring
RISCVMCExpr VKs like the rest of the RISC-V backend).
Differential Revision: https://reviews.llvm.org/D66419
llvm-svn: 369375
This series of merges will permit riscv64 kernels and riscv64sf worlds
to build with clang instead of gcc (but still using the bfd linker).
Requested by: jhb
Obtained from: https://github.com/freebsd/freebsd/compare/master...bsdjhb:riscv_clang
MFC after: 1 month
X-MFC-With: r353358
Notes:
svn path=/head/; revision=354469
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[ARM] VFPv2 only supports 16 D registers.
r361845 changed the way we handle "D16" vs. "D32" targets; there used
to be a negative "d16" which removed instructions from the
instruction set, and now there's a "d32" feature which adds
instructions to the instruction set. This is good, but there was an
oversight in the implementation: the behavior of VFPv2 was changed.
In particular, the "vfp2" feature was changed to imply "d32". This is
wrong: VFPv2 only supports 16 D registers.
In practice, this means if you specify -mfpu=vfpv2, the compiler will
generate illegal instructions.
This patch gets rid of "vfp2d16" and "vfp2d16sp", and fixes "vfp2"
and "vfp2sp" so they don't imply "d32".
Differential Revision: https://reviews.llvm.org/D67375
Pull in r372187 from upstream clang trunk (by Eli Friedman):
[ARM] Update clang for removal of vfp2d16 and vfp2d16sp
Matching fix for https://reviews.llvm.org/D67375 (r372186).
Differential Revision: https://reviews.llvm.org/D67467
This should fix clang generating invalid opcodes for floating point
operations on armv6.
Requested by: mmel
MFC after: 3 days
Notes:
svn path=/head/; revision=354097
|
|
|
|
|
|
|
| |
release_90 branch r369369, and update version numbers.
Notes:
svn path=/projects/clang900-import/; revision=351708
|
|
|
|
| |
Notes:
svn path=/projects/clang900-import/; revision=351344
|
|
|
|
|
|
|
|
|
|
|
| |
libunwind and openmp to the upstream release_80 branch r363030
(effectively, 8.0.1 rc2). The 8.0.1 release should follow this within a
week or so.
MFC after: 2 weeks
Notes:
svn path=/head/; revision=349004
|
|
|
|
|
|
|
| |
r354130, resolve conflicts, and bump version numbers.
Notes:
svn path=/projects/clang800-import/; revision=344177
|
|
|
|
| |
Notes:
svn path=/projects/clang800-import/; revision=343210
|
|
|
|
|
|
|
| |
resolve conflicts.
Notes:
svn path=/projects/clang700-import/; revision=337149
|
|
|
|
| |
Notes:
svn path=/projects/clang700-import/; revision=336916
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't treat .symver as a regular alias definition.
This patch starts simplifying the handling of .symver.
For now it just moves the responsibility for creating an alias down to
the streamer. With that the asm streamer can pass a .symver unchanged,
which is nice since gas cannot parse "foo@bar = zed".
In a followup I hope to move the handling down to the writer so that
we don't need special hacks for avoiding breaking names with @@@ on
windows.
Pull in r327160 from upstream llvm trunk (by Rafael Espindola):
Delay creating an alias for @@@.
With this we only create an alias for @@@ once we know if it should
use @ or @@. This avoids last minutes renames and hacks to handle MS
names.
This only handles the ELF writer. LTO still has issues with @@@
aliases.
Pull in r327928 from upstream llvm trunk (by Vitaly Buka):
Object: Move attribute calculation into RecordStreamer. NFC
Summary: Preparation for D44274
Reviewers: pcc, espindola
Subscribers: hiraditya
Differential Revision: https://reviews.llvm.org/D44276
Pull in r327930 from upstream llvm trunk (by Vitaly Buka):
Object: Fix handling of @@@ in .symver directive
Summary:
name@@@nodename is going to be replaced with name@@nodename if symbols is
defined in the assembled file, or name@nodename if undefined.
https://sourceware.org/binutils/docs/as/Symver.html
Fixes PR36623
Reviewers: pcc, espindola
Subscribers: mehdi_amini, hiraditya
Differential Revision: https://reviews.llvm.org/D44274
Together, these changes fix handling of @@@ in .symver directives when
doing Link Time Optimization.
Reported by: Shawn Webb <shawn.webb@hardenedbsd.org>
MFC after: 3 months
X-MFC-With: r327952
Notes:
svn path=/head/; revision=331366
|
|
|
|
| |
Notes:
svn path=/projects/clang600-import/; revision=327134
|
|
|
|
| |
Notes:
svn path=/projects/clang600-import/; revision=327023
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the upstream release_50 branch.
As of this version, lib/msun's trig test should also work correctly
again (see bug 220989 for more information).
PR: 220989
MFC after: 2 months
X-MFC-with: r321369
Notes:
svn path=/head/; revision=322855
|
|
|
|
|
|
|
|
|
|
| |
upstream release_50 branch.
MFC after: 2 months
X-MFC-with: r321369
Notes:
svn path=/head/; revision=322740
|
|
|
|
|
|
|
|
|
|
| |
upstream release_50 branch.
MFC after: 2 months
X-MFC-with: r321369
Notes:
svn path=/head/; revision=322320
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=321238
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=320970
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=320572
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=320397
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=320041
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=319799
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=319479
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=319164
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=318681
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=318384
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=317969
|
|
|
|
|
|
|
| |
build glue (preliminary, not all option combinations work yet).
Notes:
svn path=/projects/clang500-import/; revision=317778
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang500-import/; revision=317472
|
|
|
|
| |
Notes:
svn path=/projects/clang500-import/; revision=317230
|
|
|
|
| |
Notes:
svn path=/projects/clang500-import/; revision=317029
|
|
|
|
|
|
|
| |
build glue.
Notes:
svn path=/projects/clang400-import/; revision=312197
|
|
|
|
| |
Notes:
svn path=/projects/clang400-import/; revision=311833
|
|
|
|
| |
Notes:
svn path=/projects/clang400-import/; revision=311142
|
|
|
|
| |
Notes:
svn path=/projects/clang390-import/; revision=304240
|
|
|
|
| |
Notes:
svn path=/projects/clang380-import/; revision=294024
|
|
|
|
| |
Notes:
svn path=/projects/clang380-import/; revision=292941
|
|
|
|
| |
Notes:
svn path=/projects/clang-trunk/; revision=286684
|
|
|
|
| |
Notes:
svn path=/projects/clang-trunk/; revision=285181
|
|
|
|
| |
Notes:
svn path=/projects/clang-trunk/; revision=284734
|
|
|
|
|
|
|
| |
r239412.
Notes:
svn path=/projects/clang-trunk/; revision=284236
|
|
|
|
|
|
|
| |
preserve our customizations, where necessary.
Notes:
svn path=/projects/clang-trunk/; revision=283631
|
|
|
|
|
|
|
| |
^/vendor/clang/dist, resolve conflicts, and cleanup patches.
Notes:
svn path=/projects/clang360-import/; revision=277718
|
|
|
|
|
|
|
|
| |
there. (Upstream is now using a generated file for this, so there is no
direct upstream commit associated with this change.)
Notes:
svn path=/projects/clang350-import/; revision=276222
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
AArch64: add support for dynamic-loader relocations
LLD needs them, and it's good to be able to print them properly when
our object dumpers encounter them.
Patch by Daniel Stewart.
This is needed for supporting the upgrade to a newer LLDB snapshot.
Notes:
svn path=/projects/clang350-import/; revision=275152
|
|
|
|
|
|
|
| |
preserve our customizations, where necessary.
Notes:
svn path=/projects/clang350-import/; revision=274968
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r197824 | rdivacky | 2013-12-20 19:08:54 +0100 (Fri, 20 Dec 2013) | 2 lines
Implement initial-exec TLS for PPC32.
r213427 | hfinkel | 2014-07-19 01:29:49 +0200 (Sat, 19 Jul 2014) | 7 lines
[PowerPC] 32-bit ELF PIC support
This adds initial support for PPC32 ELF PIC (Position Independent Code; the
-fPIC variety), thus rectifying a long-standing deficiency in the PowerPC
backend.
Patch by Justin Hibbits!
r213960 | hfinkel | 2014-07-25 19:47:22 +0200 (Fri, 25 Jul 2014) | 3 lines
[PowerPC] Support TLS on PPC32/ELF
Patch by Justin Hibbits!
Reviewed by: jhibbits
Approved by: dim
Notes:
svn path=/head/; revision=270147
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
3.4 on Sparc64 (commit descriptions left out for brevity):
r196755 r198028 r198029 r198030 r198145 r198149 r198157 r198565 r199186
r199187 r198280 r198281 r198286 r198480 r198484 r198533 r198567 r198580
r198591 r198592 r198658 r198681 r198738 r198739 r198740 r198893 r198909
r198910 r199014 r199024 r199028 r199031 r199033 r199061 r199775 r199781
r199786 r199940 r199974 r199975 r199977 r200103 r200104 r200112 r200130
r200131 r200141 r200282 r200368 r200373 r200376 r200509 r200617 r200960
r200961 r200962 r200963 r200965
Submitted by: rdivacky
Notes:
svn path=/projects/clang-sparc64/; revision=262261
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
all of the features in the current working draft of the upcoming C++
standard, provisionally named C++1y.
The code generator's performance is greatly increased, and the loop
auto-vectorizer is now enabled at -Os and -O2 in addition to -O3. The
PowerPC backend has made several major improvements to code generation
quality and compile time, and the X86, SPARC, ARM32, Aarch64 and SystemZ
backends have all seen major feature work.
Release notes for llvm and clang can be found here:
<http://llvm.org/releases/3.4/docs/ReleaseNotes.html>
<http://llvm.org/releases/3.4/tools/clang/docs/ReleaseNotes.html>
MFC after: 1 month
Notes:
svn path=/head/; revision=261991
|
|
|
|
|
|
|
|
|
| |
Release notes are still in the works, these will follow soon.
MFC after: 1 month
Notes:
svn path=/head/; revision=251662
|