[RTEMS Project] #4083: i386: bad asm in smp mode (rtems.git/5)
RTEMS trac
trac at rtems.org
Mon Sep 21 17:23:05 UTC 2020
#4083: i386: bad asm in smp mode (rtems.git/5)
--------------------------+---------------------------
Reporter: Gedare Bloom | Owner: Gedare Bloom
Type: defect | Status: assigned
Priority: normal | Milestone: 5.1
Component: arch/i386 | Version: 5
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: |
--------------------------+---------------------------
Description changed by Gedare Bloom:
Old description:
> Cloned from #4076:
> ----
> A note for me (or someone) to make the fix outlined on the mailing list.
>
> > > cpukit/score/cpu/i386/include/rtems/asm.h:157 movb
> > > imps_apic_cpu_map(\REG),\REG /* CPU ID in REG */
> > >
> > > The assembler is right to complain. movb has to target one of the
> > > 1-byte mnemonics, so this should be %al for the LSB of %eax. One
> needs
> > > to check through this logic carefully, but I think the right thing to
> > > do here is:
> > > movzbl imps_apic_cpu_map(\REG),\REG
> > >
> > > That should do the trick. Can you test it locally?
> >
> > Sure! Builds fine and testsuite testing reveals:
New description:
Cloned from #4076:
----
A note for me (or someone) to make the fix outlined on the mailing list.
> > cpukit/score/cpu/i386/include/rtems/asm.h:157 movb
> > imps_apic_cpu_map(\REG),\REG /* CPU ID in REG */
> >
> > The assembler is right to complain. movb has to target one of the
> > 1-byte mnemonics, so this should be %al for the LSB of %eax. One needs
> > to check through this logic carefully, but I think the right thing to
> > do here is:
> > movzbl imps_apic_cpu_map(\REG),\REG
> >
> > That should do the trick. Can you test it locally?
>
> Sure! Builds fine and testsuite testing reveals:
Joel would like this fixed on 5.
--
--
Ticket URL: <http://devel.rtems.org/ticket/4083#comment:1>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list