[oe] [PATCH 1/2] mozjs: set -fno-schedule-insns2 on both CFLAGS and CXXFLAGS

Khem Raj raj.khem at gmail.com
Thu Aug 16 02:27:52 UTC 2018


On Wed, Aug 15, 2018 at 7:18 PM Ricardo Salveti <ricardo at foundries.io> wrote:
>
> On Tue, Aug 14, 2018 at 3:50 PM, Andy <andreas.kling at gmail.com> wrote:
> > Hi,
> >
> > Am Do., 2. Aug. 2018 um 10:34 Uhr schrieb Khem Raj <raj.khem at gmail.com>:
> >>
> >> Hi Ricardo
> >>
> >>
> >> On Tue, Jul 31, 2018 at 8:06 PM Ricardo Salveti <ricardo at foundries.io> wrote:
> >> >
> >> > Mozjs fails to start on several architectures due broken build
> >> > optimizations when building with GCC >= 6.
> >> >
> >> > Set -fno-schedule-insns2 as workaround (flag also used by Firefox and
> >> > Debian).
> >> >
> >> > Signed-off-by: Ricardo Salveti <ricardo at foundries.io>
> >> > ---
> >> >  meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb | 5 +++++
> >> >  1 file changed, 5 insertions(+)
> >> >
> >> > diff --git a/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb b/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb
> >> > index da80b63..adc27ac 100644
> >> > --- a/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb
> >> > +++ b/meta-oe/recipes-extended/mozjs/mozjs_52.8.1.bb
> >> > @@ -30,6 +30,11 @@ CONFLICT_DISTRO_FEATURES_mipsarchn32 = "ld-is-gold"
> >> >
> >> >  DEPENDS += "nspr zlib"
> >> >
> >> > +# Avoid broken JIT on several architectures (from Firefox and Debian)
> >> > +# https://bugzilla.mozilla.org/show_bug.cgi?id=1245783
> >> > +CFLAGS += "-fno-schedule-insns2"
> >> > +CXXFLAGS += "-fno-schedule-insns2"
> >> > +
> >>
> >> Could you test with -fno-tree-vrp -fno-strict-aliasing
> >> -fno-delete-null-pointer-checks instead of -fno-schedule-insns2
> >>
> >
> > at least polkit is able to start again using
> >
> > CFLAGS += "-fno-tree-vrp -fno-strict-aliasing -fno-delete-null-pointer-checks"
> > CXXFLAGS += "-fno-tree-vrp -fno-strict-aliasing -fno-delete-null-pointer-checks"
> >
> > before I got:
> > Assertion failure: !joinable()
> > in cortexa7t2hf-neon-poky-linux-gnueabi/mozjs/52.8.1-r0/mozjs-52.8.1/js/src/threading/Thread.h:122
>
> Finally able to test this locally across multiple builds, and these
> flags seems to be working fine as well.
>
> Looking around and it seems fedora is also using the flags you
> suggested, should we use them instead of '-fno-schedule-insns2'? If
> so, I can prepare another patch with the new changes.
>

yes we should, disabling a instructions schedule pass is too broad
when we can get over by doing a bit less

> Thanks,
> --
> Ricardo Salveti



More information about the Openembedded-devel mailing list