Date: Sat, 26 Apr 1997 05:29:39 +1000 From: Bruce Evans <bde@zeta.org.au> To: bde@zeta.org.au, smp@csn.net Cc: freebsd-smp@freebsd.org, nishio@caleche.kecl.ntt.co.jp, peter@spinner.dialix.com Subject: Re: Tyan ATX1668 problem -- success Message-ID: <199704251929.FAA10469@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> No, you can access everything using %ss in assembler - you pay for loading >> %ss for traps to inner privilege whether you want to or not. However, >> prefixes may cost a cycle or two, so it is better to load %ds if you >> want to do more than a few memory accesses. > >excuse my asm ignorance, what would this convert to with your suggested >technique? Deleted the commented out lines and add the lines marked `!'. _Xfastipi32: pushl %eax movl %cr3, %eax movl %eax, %cr3 # pushl %ds # movl $KDSEL,%eax # movl %ax,%ds ! ss movl _apic_base, %eax ! ss movl $0, APIC_EOI(%eax) # popl %ds popl %eax iret >_apic_base is actually a set of memory-mapped registers in the local >APIC of the CPU, NOT general memory. This shouldn't affect the addressing. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704251929.FAA10469>