2003-02-05 Chris Demetriou <cgd@broadcom.com>

* mips/cfe.c (hardware_hazard_hook): Move...
	* mips/cfe_prestart.S (hardware_hazard_hook): To here,
	and translate into assembly.
This commit is contained in:
Jeff Johnston 2003-02-05 17:01:33 +00:00
parent 5017a3dafa
commit 3a357eadba
3 changed files with 29 additions and 20 deletions

View File

@ -1,14 +1,20 @@
2002-01-08 Richard Sandiford <rsandifo@redhat.com
2003-02-05 Chris Demetriou <cgd@broadcom.com>
* mips/cfe.c (hardware_hazard_hook): Move...
* mips/cfe_prestart.S (hardware_hazard_hook): To here,
and translate into assembly.
2003-01-08 Richard Sandiford <rsandifo@redhat.com
* mips/crt0.S (_start): Allocate 64 bytes of stack instead of 32.
Pass an empty argv and envp to main().
2002-01-08 Richard Sandiford <rsandifo@redhat.com
2003-01-08 Richard Sandiford <rsandifo@redhat.com
* mips/configure.in (mips64vr-elf, mips64vrel-elf): New config.
* mips/configure: Regenerate.
2002-01-07 Chris Demetriou <cgd@broadcom.com>
2003-01-07 Chris Demetriou <cgd@broadcom.com>
* crt0.S: Check for definition of __mips64 rather than
checking (__mips < 3).

View File

@ -96,23 +96,6 @@ hardware_init_hook(void)
cfe_conshandle = cfe_getstdhandle(CFE_STDHANDLE_CONSOLE);
}
/* Avoid worst-case execution hazards. This is targetted at the SB-1
pipe, and is much worse than it needs to be (not even counting
the subroutine call and return). */
void
hardware_hazard_hook(void)
{
__asm__ __volatile__ (" .set push \n"
" .set mips32 \n"
" .set noreorder \n"
" ssnop \n"
" ssnop \n"
" ssnop \n"
" bnel $0, $0, .+4 \n"
" ssnop \n"
" .set pop \n");
}
/* Exit back to monitor, with the given status code. */
void
hardware_exit_hook (int status)

View File

@ -64,3 +64,23 @@ _prestart:
jr v0
nop
.end _prestart
/* Avoid worst-case execution hazards. This is targetted at the SB-1
pipe, and is much worse than it needs to be (not even counting
the subroutine call and return). */
.globl hardware_hazard_hook
.ent hardware_hazard_hook
hardware_hazard_hook:
.set push
.set mips32
.set noreorder
ssnop
ssnop
ssnop
bnel $0, $0, .+4
ssnop
j ra
nop
.set pop
.end hardware_hazard_hook