[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