mips.py: include R4x00 and loongson workarounds in mips3
authorMatt Turner <mattst88@gentoo.org>
Tue, 28 Jun 2011 00:54:25 +0000 (20:54 -0400)
committerMatt Turner <mattst88@gmail.com>
Tue, 28 Jun 2011 00:55:23 +0000 (20:55 -0400)
arch/mips.py

index a83dd17b043c683940d4b9cf93770f4812c7214a..c04771f3c0e05030e74e4ab47edcc6231a2dcaa2 100644 (file)
@@ -46,26 +46,26 @@ class arch_mips3(generic_mips):
        "Builder class for MIPS III [Big-endian]"
        def __init__(self,myspec):
                generic_mips.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=32 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=32 -mfix-r4000 -mfix-r4400 -pipe"
 
 class arch_mips3_n32(generic_mips64):
        "Builder class for MIPS III [Big-endian N32]"
        def __init__(self,myspec):
                generic_mips64.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=n32 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=n32 -mfix-r4000 -mfix-r4400 -pipe"
 
 class arch_mips3_n64(generic_mips64):
        "Builder class for MIPS III [Big-endian N64]"
        def __init__(self,myspec):
                generic_mips64.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=64 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=64 -mfix-r4000 -mfix-r4400 -pipe"
 
 class arch_mips3_multilib(generic_mips64,generic_multilib):
        "Builder class for MIPS III [Big-endian multilib]"
        def __init__(self,myspec):
                generic_mips64.__init__(self,myspec)
                generic_multilib.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mfix-r4000 -mfix-r4400 -pipe"
 
 class arch_mips4(generic_mips64):
        "Builder class for MIPS IV [Big-endian]"
@@ -102,26 +102,26 @@ class arch_mipsel3(generic_mipsel):
        "Builder class for all MIPS III [Little-endian]"
        def __init__(self,myspec):
                generic_mipsel.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=32 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=32 -Wa,-mfix-loongson2f-nop -pipe"
 
 class arch_mipsel3_n32(generic_mips64el):
        "Builder class for all MIPS III [Little-endian N32]"
        def __init__(self,myspec):
                generic_mips64el.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=n32 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=n32 -Wa,-mfix-loongson2f-nop -pipe"
 
 class arch_mipsel3_n64(generic_mips64el):
        "Builder class for MIPS III [Little-endian N64]"
        def __init__(self,myspec):
                generic_mips64el.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -mabi=64 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -mabi=64 -Wa,-mfix-loongson2f-nop -pipe"
 
 class arch_mipsel3_multilib(generic_mips64el,generic_multilib):
        "Builder class for MIPS III [Little-endian multilib]"
        def __init__(self,myspec):
                generic_mips64el.__init__(self,myspec)
                generic_multilib.__init__(self,myspec)
-               self.settings["CFLAGS"]="-O2 -mips3 -pipe"
+               self.settings["CFLAGS"]="-O2 -mips3 -Wa,-mfix-loongson2f-nop -pipe"
 
 class arch_loongson2e(generic_mipsel):
        "Builder class for all Loongson 2E [Little-endian]"