On Sun, Dec 8, 2019 at 6:43 PM Bin Meng <[email protected]> wrote: > > Hi Masahiro, > > On Tue, Dec 3, 2019 at 1:29 PM Masahiro Yamada <[email protected]> wrote: > > > > You can directly specify the label as the operand for ljmp. > > > > This commit saves 4-byte code. > > > > Signed-off-by: Masahiro Yamada <[email protected]> > > --- > > > > arch/x86/cpu/start16.S | 4 +--- > > 1 file changed, 1 insertion(+), 3 deletions(-) > > > > diff --git a/arch/x86/cpu/start16.S b/arch/x86/cpu/start16.S > > index bcabd76741ef..7bad9f3e4d87 100644 > > --- a/arch/x86/cpu/start16.S > > +++ b/arch/x86/cpu/start16.S > > @@ -44,10 +44,8 @@ data32 cs lgdt gdt_ptr > > ff: > > > > /* Finally restore BIST and jump to the 32-bit initialization code > > */ > > - movw $code32start, %ax > > - movw %ax, %bp > > movl %ecx, %eax > > -data32 cs ljmp *(%bp) > > +data32 cs ljmp code32start > > There should be a * before code32start, otherwise gas reportes: > > arch/x86/cpu/start16.S: Assembler messages: > arch/x86/cpu/start16.S:48: Warning: indirect ljmp without `*'
fixed the warning by adding * before code32start > > > > > /* 48-bit far pointer */ > > code32start: > > -- > > Reviewed-by: Bin Meng <[email protected]> > Tested-by: Bin Meng <[email protected]> and applied to u-boot-x86, thanks!

