flt_rounds_softfloat.S revision 1.2
11.2Sjmmv/* $NetBSD: flt_rounds_softfloat.S,v 1.2 2004/09/26 21:13:27 jmmv Exp $ */ 21.1Sfredette 31.1Sfredette/* 41.1Sfredette * Written by J.T. Conklin, Apr 6, 1995 51.1Sfredette * Public domain. 61.2Sjmmv 71.2Sjmmv * Broken by Bruce O'Neel Aug 4 2003 81.2Sjmmv gcc no longer seems to export fpCCR so this fails. 91.2Sjmmv for now just return 0. 101.1Sfredette */ 111.1Sfredette 121.1Sfredette#include <machine/asm.h> 131.1Sfredette 141.1Sfredette .text 151.1Sfredette .even 161.1Sfredette 171.1Sfredette /* NB: this is tied to the gcc-2.95 lb1sf68.asm: */ 181.1Sfredette_map: 191.1Sfredette .byte 1 /* round to nearest */ 201.1Sfredette .byte 0 /* round to zero */ 211.1Sfredette .byte 2 /* round to positive infinity */ 221.1Sfredette .byte 3 /* round to negative infinity */ 231.1Sfredette 241.1SfredetteENTRY(__flt_rounds) 251.2Sjmmv /* lea _C_LABEL(_fpCCR),%a0 | check the rounding mode */ 261.2Sjmmv /* movew %a0@(6),%d0 | rounding mode in d0 */ 271.2Sjmmv /* lea _map,%a0 */ 281.2Sjmmv moveb #0,%d0 291.1Sfredette rts 301.1Sfredette 311.1Sfredette 321.1Sfredette 33