* [crosstool-ng/crosstool-ng] ecb09c: ARC: Add multilib support for Linux in GCC
@ 2018-05-21 15:49 Alexey Neyman
0 siblings, 0 replies; only message in thread
From: Alexey Neyman @ 2018-05-21 15:49 UTC (permalink / raw)
To: crossgcc
[-- Attachment #1: Type: text/plain, Size: 5033 bytes --]
Branch: refs/heads/master
Home: https://github.com/crosstool-ng/crosstool-ng
Commit: ecb09ca417a9719c59c7247fd77237b275e277e3
https://github.com/crosstool-ng/crosstool-ng/commit/ecb09ca417a9719c59c7247fd77237b275e277e3
Author: Alexey Brodkin <abrodkin@synopsys.com>
Date: 2018-05-21 (Mon, 21 May 2018)
Changed paths:
A packages/gcc/8.1.0/0019-ARC-Add-multilib-support-for-linux-targets.patch
Log Message:
-----------
ARC: Add multilib support for Linux in GCC
We never bothered to build multilibbed Linux toolchains for ARC
and so we ended-up with no support of multilib for arc*-*-linux-*
targets in GCC. That is now fixed in upstream by the following commit:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0eacfbcb2bf1834294f468a2bb41fe5d5e8d3883
Once the fix mentioned above is applied on top of GCC 8.1.0 we may easily build
multilibbed uClibc toolchain for ARC.
Note sice Glibc port for ARC is still in review process we cannot build any Glibc
toolchains for ARC with pure upstream components, for that we eiter need Glibc
sources from our Github repo or apply a set of patches on top of Glibc 2.27 - we'll
try to address this later though.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Commit: b078bb09dd3e460788d914a07adf3f4f53c86494
https://github.com/crosstool-ng/crosstool-ng/commit/b078bb09dd3e460788d914a07adf3f4f53c86494
Author: Alexey Brodkin <abrodkin@synopsys.com>
Date: 2018-05-21 (Mon, 21 May 2018)
Changed paths:
A samples/arc-multilib-linux-uclibc/crosstool.config
A samples/arc-multilib-linux-uclibc/reported.by
Log Message:
-----------
ARC: Add Linux uClibc multilib sample
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Commit: 0a64056dd3d094503a1ef1d23d2636bcd9708b2f
https://github.com/crosstool-ng/crosstool-ng/commit/0a64056dd3d094503a1ef1d23d2636bcd9708b2f
Author: Alexey Brodkin <abrodkin@synopsys.com>
Date: 2018-05-21 (Mon, 21 May 2018)
Changed paths:
M scripts/build/arch/arc.sh
Log Message:
-----------
ARC: Disable CONFIG_ARC_HAS_ATOMICS in uClibc if building without -matomics
In case we build for ARC core which has no support of atomic ops among
other things we need to configure libc to use Linux kernel helper to emulate
HS atomic ops. This is done with disabling of CONFIG_ARC_HAS_ATOMICS in uClibc.
Currently we __remove__ this option from .config but this makes no sense as
its default state is "y" so we need to explicitly disable it instead.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Commit: 409046f91d18f4f80f044f2e9c08c0e9e04eeb92
https://github.com/crosstool-ng/crosstool-ng/commit/409046f91d18f4f80f044f2e9c08c0e9e04eeb92
Author: Alexey Brodkin <abrodkin@synopsys.com>
Date: 2018-05-21 (Mon, 21 May 2018)
Changed paths:
M samples/arc-arc700-linux-uclibc/crosstool.config
M samples/arc-arc700-linux-uclibc/reported.by
R samples/arc-archs-linux-uclibc/crosstool.config
R samples/arc-archs-linux-uclibc/reported.by
Log Message:
-----------
ARC: Update Linux samples
There's no point in keeping samples which are in its essense
just a sub-set of multilib toolchain.
But still we'd like to cover quite unusual but really existing
case - ARC750, i.e. ARC700 with MMU but without so-called
atomic instructions (LLOCK/SCOND). To support this HW variation
we need:
1) Compile all target binaries without "-matomics" or even
better "-mno-atomics" so that's even future-proof
(as we may decide to enable "-matomics" by default for Linux
targets which is a recommented setup).
2) Configure libc such that it uses Linux-kernel-assisted implementation
of atomic operation via "arc_usr_cmpxchg" syscall,
see https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=b985fa069187e4c5a7ee84213d9fbead2f219ce5
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Commit: ab3c204aee88f08481f1f63825d0e94b082ef84e
https://github.com/crosstool-ng/crosstool-ng/commit/ab3c204aee88f08481f1f63825d0e94b082ef84e
Author: Alexey Neyman <stilor@att.net>
Date: 2018-05-21 (Mon, 21 May 2018)
Changed paths:
A packages/gcc/8.1.0/0019-ARC-Add-multilib-support-for-linux-targets.patch
M samples/arc-arc700-linux-uclibc/crosstool.config
M samples/arc-arc700-linux-uclibc/reported.by
R samples/arc-archs-linux-uclibc/crosstool.config
R samples/arc-archs-linux-uclibc/reported.by
A samples/arc-multilib-linux-uclibc/crosstool.config
A samples/arc-multilib-linux-uclibc/reported.by
M scripts/build/arch/arc.sh
Log Message:
-----------
Merge pull request #970 from abrodkin/topic-uclibc-multilib
Add support and sample for uclibc multilib toolchain for ARC
Compare: https://github.com/crosstool-ng/crosstool-ng/compare/ea53be7529f4...ab3c204aee88
**NOTE:** This service been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2018-05-21 15:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-21 15:49 [crosstool-ng/crosstool-ng] ecb09c: ARC: Add multilib support for Linux in GCC Alexey Neyman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).