This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
nop in load-delay-slot (on MIPS o32 PIC code)
- From: Atsushi Nemoto <anemo at mba dot ocn dot ne dot jp>
- To: binutils at sources dot redhat dot com
- Date: Tue, 20 Apr 2004 20:33:14 +0900 (JST)
- Subject: nop in load-delay-slot (on MIPS o32 PIC code)
In MIPS PIC code, mips-linux-as produces a nop for load-delay-slot in
many case even if -march=mips2 was specified.
I found many codes inserting a nop blindly such as:
macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)",
tempreg, BFD_RELOC_MIPS_GOT16, mips_gp_register);
macro_build (NULL, "nop", "");
macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j",
tempreg, tempreg, BFD_RELOC_LO16);
in gas/config/tc-mips.c.
I think this nop can be omitted on "!gpr_interlocks" condition. Is
this nop required by MIPS ABI(o32) ? The march=mips2 option should
not override this behavior ?
Thank you.
---
Atsushi Nemoto