Message ID | 1479811345-23400-1-git-send-email-vzakhar@synopsys.com |
---|---|
State | Accepted |
Headers | show |
Hello, On Tue, 22 Nov 2016 13:42:25 +0300, Vlad Zakharov wrote: > Compact casesi patterns don't have a reload version. This causes build > failures of "trousers" package for ARC. > > Current patch disables compact casesi patterns for ARCv1 (750D and 770D) > via passing "-mno-compact-casesi" option when compiling "trousers". > > This change is a temporary workaround and the feature is going to be > fixed in the next ARC toolchain release version. > > Fixes: > http://autobuild.buildroot.org/results/d2c/d2c16d8ba022b070c4dbeba5e7ea41f14d706691// > > Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> > --- > Changes v1..v2: > - Replaced CFLAGS="$(CFLAGS) ..." with CFLAGS="$(TARGET_CFLAGS) ..." > - Added a link to autobuilder failure Applied to master, thanks. Thomas
Hello, On Tue, 22 Nov 2016 13:42:25 +0300, Vlad Zakharov wrote: > Compact casesi patterns don't have a reload version. This causes build > failures of "trousers" package for ARC. > > Current patch disables compact casesi patterns for ARCv1 (750D and 770D) > via passing "-mno-compact-casesi" option when compiling "trousers". > > This change is a temporary workaround and the feature is going to be > fixed in the next ARC toolchain release version. > > Fixes: > http://autobuild.buildroot.org/results/d2c/d2c16d8ba022b070c4dbeba5e7ea41f14d706691// > > Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> We still have a build failure of the trousers package on ARC, see: http://autobuild.buildroot.net/results/1e7/1e730465c79f50143b0ca2366a3c07ea5e8648b1/build-end.log The failure is: (jump_insn 34 262 35 5 (parallel [ (set (pc) (unspec:SI [ (reg:SI 14 r14 [165]) ] UNSPEC_ARC_CASESI)) (use (label_ref 35)) (clobber (scratch:SI)) ]) tspi_context.c:145 130 {casesi_compact_jump} (expr_list:REG_DEAD (reg:SI 14 r14 [165]) (nil)) -> 35) tspi_context.c:325:1: internal compiler error: in find_reloads, at reload.c:3830 Please submit a full bug report, with preprocessed source if appropriate. Best regards, Thomas
Hi Thomas, On Fri, 2016-11-25 at 22:13 +0100, Thomas Petazzoni wrote: > Hello, > > On Tue, 22 Nov 2016 13:42:25 +0300, Vlad Zakharov wrote: > > > > Compact casesi patterns don't have a reload version. This causes build > > failures of "trousers" package for ARC. > > > > Current patch disables compact casesi patterns for ARCv1 (750D and 770D) > > via passing "-mno-compact-casesi" option when compiling "trousers". > > > > This change is a temporary workaround and the feature is going to be > > fixed in the next ARC toolchain release version. > > > > Fixes: > > http://autobuild.buildroot.org/results/d2c/d2c16d8ba022b070c4dbeba5e7ea41f14d706691// > > > > Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> > > We still have a build failure of the trousers package on ARC, see: > > http://autobuild.buildroot.net/results/1e7/1e730465c79f50143b0ca2366a3c07ea5e8648b1/build-end.log > > The failure is: > > (jump_insn 34 262 35 5 (parallel [ > (set (pc) > (unspec:SI [ > (reg:SI 14 r14 [165]) > ] UNSPEC_ARC_CASESI)) > (use (label_ref 35)) > (clobber (scratch:SI)) > ]) tspi_context.c:145 130 {casesi_compact_jump} > (expr_list:REG_DEAD (reg:SI 14 r14 [165]) > (nil)) > -> 35) > tspi_context.c:325:1: internal compiler error: in find_reloads, at reload.c:3830 > Please submit a full bug report, > with preprocessed source if appropriate. > > Best regards, > > Thomas Thank you for sending us this observation. I mentioned this SNAFU too and have already investigated the situation a bit. This happens because either "-Os" overrides "-mno-compact-casesi" option or the latter option doesn't work at all. In any case we are working at the issue and will soon either provide some fix or send another workaround for "trousers" package. Thanks. -- Best regards, Vlad Zakharov <vzakhar@synopsys.com>
diff --git a/package/trousers/trousers.mk b/package/trousers/trousers.mk index 3d9e0ba..4fc9499 100644 --- a/package/trousers/trousers.mk +++ b/package/trousers/trousers.mk @@ -18,6 +18,10 @@ ifeq ($(BR2_PACKAGE_LIBICONV),y) TROUSERS_DEPENDENCIES += libiconv endif +ifeq ($(BR2_arc770d)$(BR2_arc750d),y) +TROUSERS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mno-compact-casesi" +endif + # The TrouSerS build system attempts to create the tss user and group # on the host system. Disable the user checking feature as a # workaround.
Compact casesi patterns don't have a reload version. This causes build failures of "trousers" package for ARC. Current patch disables compact casesi patterns for ARCv1 (750D and 770D) via passing "-mno-compact-casesi" option when compiling "trousers". This change is a temporary workaround and the feature is going to be fixed in the next ARC toolchain release version. Fixes: http://autobuild.buildroot.org/results/d2c/d2c16d8ba022b070c4dbeba5e7ea41f14d706691// Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com> --- Changes v1..v2: - Replaced CFLAGS="$(CFLAGS) ..." with CFLAGS="$(TARGET_CFLAGS) ..." - Added a link to autobuilder failure package/trousers/trousers.mk | 4 ++++ 1 file changed, 4 insertions(+)