From 0bffee4893ddc0837307cd604a861bb24c10e48c Mon Sep 17 00:00:00 2001 From: is Date: Mon, 4 Dec 2000 12:02:08 +0000 Subject: [PATCH] The mapping is, effectively, an exclusive or with 0x01. Replace. Savings: 10 bytes of code/constant data, 1 machine instruction (including one memory access). --- lib/libc/arch/m68k/gen/flt_rounds.S | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/libc/arch/m68k/gen/flt_rounds.S b/lib/libc/arch/m68k/gen/flt_rounds.S index d741fd521ee2..051e710ad7ef 100644 --- a/lib/libc/arch/m68k/gen/flt_rounds.S +++ b/lib/libc/arch/m68k/gen/flt_rounds.S @@ -1,4 +1,4 @@ -/* $NetBSD: flt_rounds.S,v 1.8 1999/10/25 23:48:10 thorpej Exp $ */ +/* $NetBSD: flt_rounds.S,v 1.9 2000/12/04 12:02:08 is Exp $ */ /* * Written by J.T. Conklin, Apr 6, 1995 @@ -9,15 +9,17 @@ .text .even +#if 0 +/* XXX This is, effectively, an exclusive-or with 1 operation. */ _map: .byte 1 /* round to nearest */ .byte 0 /* round to zero */ .byte 3 /* round to negative infinity */ .byte 2 /* round to positive infinity */ +#endif ENTRY(__flt_rounds) fmovel %fpcr,%d0 bfextu %d0{#26:#2},%d0 - lea _map,%a0 - moveb %a0@(%d0:l:1),%d0 + eorib #1,%d0 rts