From: Pete Popov <ppopov@mvista.com>
To: "Kevin D. Kissell" <kevink@mips.com>
Cc: linux-mips@oss.sgi.com
Subject: Re: Can't build a CONFIG_CPU_NEVADA kernel
Date: Wed, 14 Mar 2001 17:50:06 -0800 [thread overview]
Message-ID: <3AB01FCE.CDFA99C9@mvista.com> (raw)
In-Reply-To: 011001c0acd8$c27a9220$0deca8c0@Ulysses
"Kevin D. Kissell" wrote:
>
> > "Correct" usage would be to enable those three instructions
> > with a "-mcpu=nevada", or better still, "-mcpu=r5200" (for
> > consistency), and to enable the rest of the MIPS IV ISA
> > with "-mips4" instead of the archaic r8000 hack.
>
> I should add "Correct", but not useful for 32-bit
> kernels. "-mips32", once that percolates through
> the gcc food chain, would be *almost* perfect
> for 32-bit Nevada kernels. I say almost, because
> while MIPS32 is 32-bit MIPS IV plus MADD, it also
> has a handfull of instructions that are not supported
> by the R52xx, of which it is wildly improbable but
> theoretically possible that the multiply-subtracts
> might somehow get emitted in compiled application
> code. It should work just fine for kernel purposes, though.
>
> Meanwhile, try piping objdump of a "-mmad" kernel
> through "grep -i mad". I'd be stunned if a single MADD
> turned up. If it gains nothing, but breaks builds, then
> for heaven's sake banish -mmad from the kernel
> makefiles!
I managed to compile a 2.4.2 kernel with our bleeding edge toolchain. I
had to get rid of the -mmad from the Makefile though. The kernel boots
and runs and I ran Bonnie over NFS as well as on an IDE hard disk. I
tried some other tests as well, and they all passed.
Without the -mmad flag, I see the following mad instructions below. No
"madd" though, just madd.s, madd16, mad, etc. So, can we get rid of this
flag in the Makefile?
Pete
0000000080132690 <sys_madvise>:
801326dc: 1080fffc beqz $a0,801326d0 <sys_madvise+40>
801326e4: 04810004 bgez $a0,801326f8 <sys_madvise+68>
801326f8: 5440002e bnezl $v0,801327b4 <sys_madvise+124>
80132714: 54400027 bnezl $v0,801327b4 <sys_madvise+124>
8013271c: 12510024 beq $s2,$s1,801327b0
<sys_madvise+120>
80132734: 1200001e beqz $s0,801327b0 <sys_madvise+120>
80132744: 10400003 beqz $v0,80132754 <sys_madvise+c4>
80132758: 1440000c bnez $v0,8013278c <sys_madvise+fc>
80132764: 10400007 beqz $v0,80132784 <sys_madvise+f4>
80132770: 0c04c988 jal 80132620 <madvise_vma>
8013277c: 5660000d bnezl $s3,801327b4 <sys_madvise+124>
80132784: 0804c9ec j 801327b0 <sys_madvise+120>
80132790: 0c04c988 jal 80132620 <madvise_vma>
8013279c: 56600005 bnezl $s3,801327b4 <sys_madvise+124>
801327a8: 0804c9cd j 80132734 <sys_madvise+a4>
801327c8: 1080fffc beqz $a0,801327bc <sys_madvise+12c>
801327d0: 1c800004 bgtz $a0,801327e4 <sys_madvise+154>
80250590: 4d4d2030 nmadd.s $f0,$f10,$f4,$f13
80250a84: 4f4e2820 madd.s $f0,$f26,$f5,$f14
802517bc: 00000029 dmadd16 $zero,$zero
80253c94: 00000029 dmadd16 $zero,$zero
802555a4: 00000029 dmadd16 $zero,$zero
80256178: 00000029 dmadd16 $zero,$zero
80259804: 4d445b20 madd.s $f12,$f10,$f11,$f4
80259810: 4d445b20 madd.s $f12,$f10,$f11,$f4
8025981c: 4d445b20 madd.s $f12,$f10,$f11,$f4
8025aa34: 00000029 dmadd16 $zero,$zero
8025bbf0: 4c257830 nmadd.s $f0,$f1,$f15,$f5
802618a8: 4f2f4920 madd.s $f4,$f25,$f9,$f15
80262018: 4e203a70 nmadd.s $f9,$f17,$f7,$f0
802625c4: 4c554e20 madd.s $f24,$f2,$f9,$f21
80262700: 4c554e20 madd.s $f24,$f2,$f9,$f21
80264d5c: 4c545220 madd.s $f8,$f2,$f10,$f20
80264d64: 00000029 dmadd16 $zero,$zero
80265148: 4e203d21 madd.d $f20,$f17,$f7,$f0
80265194: 4e203d21 madd.d $f20,$f17,$f7,$f0
8026534c: 00000029 dmadd16 $zero,$zero
80265b50: 4f495020 madd.s $f0,$f26,$f10,$f9
80265f70: 4c554e20 madd.s $f24,$f2,$f9,$f21
80266294: 4e554c20 madd.s $f16,$f18,$f9,$f21
802670bc: 4c4c4120 madd.s $f4,$f2,$f8,$f12
80267690: 4d207361 madd.d $f13,$f9,$f14,$f0
80267f5c: 00000029 dmadd16 $zero,$zero
80268314: 00000029 dmadd16 $zero,$zero
80268abc: 00000029 dmadd16 $zero,$zero
80269cd4: 4d435020 madd.s $f0,$f10,$f10,$f3
8026a504: 00000029 dmadd16 $zero,$zero
8026df88: 4c4c5020 madd.s $f0,$f2,$f10,$f12
8026e01c: 4c502070 nmadd.s $f1,$f2,$f4,$f16
8026f6bc: 4c622020 madd.s $f0,$f3,$f4,$f2
8026f71c: 4e622020 madd.s $f0,$f19,$f4,$f2
8026f944: 4c622020 madd.s $f0,$f3,$f4,$f2
8026f9f0: 4d772020 madd.s $f0,$f11,$f4,$f23
802702f8: 4d203231 nmadd.d $f8,$f9,$f6,$f0
80273830: 00000029 dmadd16 $zero,$zero
80276a24: 4f6d7361 madd.d $f13,$f27,$f14,$f13
80277498: 4e203d21 madd.d $f20,$f17,$f7,$f0
80279c10: 4d202020 madd.s $f0,$f9,$f4,$f0
80279ea4: 4d434920 madd.s $f4,$f10,$f9,$f3
8027c588: 4f494520 madd.s $f20,$f26,$f8,$f9
80280048: 4d642520 madd.s $f20,$f11,$f4,$f4
802802c8: 4d4f5220 madd.s $f8,$f10,$f10,$f15
802a0e00: 4e414d20 madd.s $f20,$f18,$f9,$f1
802a2988: 4c4f5720 madd.s $f28,$f2,$f10,$f15
802a2a30: 00000029 dmadd16 $zero,$zero
802a2c14: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a336c: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a39e4: 00000029 dmadd16 $zero,$zero
802a3a00: 00000029 dmadd16 $zero,$zero
802a3a1c: 00000029 dmadd16 $zero,$zero
802a3a70: 00000029 dmadd16 $zero,$zero
802a3ac8: 00000029 dmadd16 $zero,$zero
802a3ad0: 4d353531 nmadd.d $f20,$f9,$f6,$f21
802a3b3c: 00000029 dmadd16 $zero,$zero
802a427c: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a50bc: 4d4f4320 madd.s $f12,$f10,$f8,$f15
802a5504: 4e414c20 madd.s $f16,$f18,$f9,$f1
802a57ec: 4c2e6920 madd.s $f4,$f1,$f13,$f14
802a5f18: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a6378: 4d544120 madd.s $f4,$f10,$f8,$f20
802a63b4: 4d207161 madd.d $f5,$f9,$f14,$f0
802a6d5c: 00000029 dmadd16 $zero,$zero
802a6ea8: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a6ebc: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802a73c0: 4e414c20 madd.s $f16,$f18,$f9,$f1
802a74cc: 4e414c20 madd.s $f16,$f18,$f9,$f1
802a75a0: 4f505420 madd.s $f16,$f26,$f10,$f16
802a7994: 4d502031 nmadd.d $f0,$f10,$f4,$f16
802a7ac0: 4e414c20 madd.s $f16,$f18,$f9,$f1
802a7b54: 4e206870 nmadd.s $f1,$f17,$f13,$f0
802a7e8c: 4d502820 madd.s $f0,$f10,$f5,$f16
802a7f84: 4e5b2061 madd.d $f1,$f18,$f4,$f27
802a7f90: 4e5b2061 madd.d $f1,$f18,$f4,$f27
802a7f9c: 4e5b2061 madd.d $f1,$f18,$f4,$f27
802a7fa8: 4e5b2061 madd.d $f1,$f18,$f4,$f27
802a8068: 00000029 dmadd16 $zero,$zero
802a8290: 4d5b2030 nmadd.s $f0,$f10,$f4,$f27
802a8c94: 4f525020 madd.s $f0,$f26,$f10,$f18
802a9088: 4e207370 nmadd.s $f13,$f17,$f14,$f0
802a94ec: 4d544120 madd.s $f4,$f10,$f8,$f20
802a962c: 4d544120 madd.s $f4,$f10,$f8,$f20
802a9c10: 00000029 dmadd16 $zero,$zero
802a9d64: 00000029 dmadd16 $zero,$zero
802a9d80: 00000029 dmadd16 $zero,$zero
802a9e2c: 00000029 dmadd16 $zero,$zero
802ab81c: 00000029 dmadd16 $zero,$zero
802ac17c: 00000029 dmadd16 $zero,$zero
802ac65c: 4d207861 madd.d $f1,$f9,$f15,$f0
802ac740: 4d207861 madd.d $f1,$f9,$f15,$f0
802ac79c: 4c525320 madd.s $f12,$f2,$f10,$f18
802ad3e4: 4e206c61 madd.d $f17,$f17,$f13,$f0
802ad954: 4d202d20 madd.s $f20,$f9,$f5,$f0
802ae994: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802af200: 4e415720 madd.s $f28,$f18,$f10,$f1
802b10cc: 4e414320 madd.s $f12,$f18,$f8,$f1
802b167c: 4e454420 madd.s $f16,$f18,$f8,$f5
802b1690: 4c554d20 madd.s $f20,$f2,$f9,$f21
802b1d88: 4d4f4320 madd.s $f12,$f10,$f8,$f15
802b1df0: 00000029 dmadd16 $zero,$zero
802b2428: 00000029 dmadd16 $zero,$zero
802b2458: 4d206e61 madd.d $f25,$f9,$f13,$f0
802b30e0: 00000029 dmadd16 $zero,$zero
802b3140: 00000029 dmadd16 $zero,$zero
802b3c68: 00000029 dmadd16 $zero,$zero
802b3ff8: 4f525020 madd.s $f0,$f26,$f10,$f18
802b4010: 4f525020 madd.s $f0,$f26,$f10,$f18
802b4120: 4d472030 nmadd.s $f0,$f10,$f4,$f7
802b453c: 4f2f4920 madd.s $f4,$f25,$f9,$f15
802b5d80: 00000029 dmadd16 $zero,$zero
802b6e38: 00000028 madd16 $zero,$zero
802b6e40: 00000029 dmadd16 $zero,$zero
802b7350: 00000028 madd16 $zero,$zero
802b80a8: 00000028 madd16 $zero,$zero
802b80b0: 00000029 dmadd16 $zero,$zero
802b81d8: 00000028 madd16 $zero,$zero
802b81e0: 00000029 dmadd16 $zero,$zero
802bdda4: 00000028 madd16 $zero,$zero
802bddd8: 00000028 madd16 $zero,$zero
802bde7c: 00000029 dmadd16 $zero,$zero
802bdeac: 00000028 madd16 $zero,$zero
802bdeb8: 00000028 madd16 $zero,$zero
802bdf14: 00000028 madd16 $zero,$zero
802be6d8: 00000028 madd16 $zero,$zero
802be764: 00000028 madd16 $zero,$zero
802c0578: 70000000 mad $zero,$zero
802c07f4: 72070000 mad $s0,$a3
802c1490: 00000028 madd16 $zero,$zero
802c957c: 00000029 dmadd16 $zero,$zero
802c96b0: 00000028 madd16 $zero,$zero
802ccdcc: 00000028 madd16 $zero,$zero
802cddb0: 00290028 madd16 $at,$t1
802cdfb0: 00290028 madd16 $at,$t1
802ce1b0: 00290028 madd16 $at,$t1
802ce6b8: 00290028 madd16 $at,$t1
802d4150: 4e534331 nmadd.d $f12,$f18,$f8,$f19
802d667c: 00000028 madd16 $zero,$zero
802d7614: 00290028 madd16 $at,$t1
802d9770: 00000028 madd16 $zero,$zero
802d9820: 00000029 dmadd16 $zero,$zero
next prev parent reply other threads:[~2001-03-15 1:51 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-03-14 13:46 Can't build a CONFIG_CPU_NEVADA kernel Daniel Jacobowitz
2001-03-14 18:59 ` Ralf Baechle
2001-03-14 19:05 ` Daniel Jacobowitz
2001-03-14 19:20 ` Ralf Baechle
2001-03-14 19:48 ` Jun Sun
2001-03-14 20:02 ` Ralf Baechle
2001-03-14 20:56 ` Daniel Jacobowitz
2001-03-14 22:11 ` Kevin D. Kissell
2001-03-14 22:11 ` Kevin D. Kissell
2001-03-14 22:47 ` Kevin D. Kissell
2001-03-14 22:47 ` Kevin D. Kissell
2001-03-15 1:50 ` Pete Popov [this message]
2001-03-15 8:01 ` Kevin D. Kissell
2001-03-15 8:01 ` Kevin D. Kissell
2001-03-16 14:04 ` Ralf Baechle
2001-03-16 14:04 ` Ralf Baechle
2001-03-16 18:02 ` Daniel Jacobowitz
2001-03-16 18:16 ` Ralf Baechle
2001-03-16 18:46 ` Kevin D. Kissell
2001-03-16 18:46 ` Kevin D. Kissell
2001-03-16 19:35 ` Ralf Baechle
2001-03-16 19:35 ` Ralf Baechle
2001-03-16 15:34 ` Ralf Baechle
2001-03-16 15:34 ` Ralf Baechle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3AB01FCE.CDFA99C9@mvista.com \
--to=ppopov@mvista.com \
--cc=kevink@mips.com \
--cc=linux-mips@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox