Re: Using float emulator on a system with FPU?
In [EMAIL PROTECTED], Bruce Evans wrote: I'm going to work on FreeBSD's floating point support, but I need to test my changes on systems using the FPU emulators (non-GPL and GPL). Is there any way to use these emulators on a system that has a hardware FPU? Toggling `npx_exists' using ddb used to work. Now, toggling it off on i586 systems causes a panic in the i586-optimised copy routines. This particular problem has a hook in npx.c: device npx0 [...] flags 7 seems to do the trick (disables usage of FPU-optimized mem stuff). I am now able to switch "npx_exists" between npx_probe1() and npx_attach(), which let me run with the emulator on a Pentium. But only from serial kgdb, since as you noted in your other message, symbols are not available to ddb in ELF kernels started with -d. I assume you use kdb_init() from db_elf.c, you how do you call it given that you neither have the symbol (not loaded yet) nor the address (`nm /kernel` output not useful)? [Throwing an egg after the chicken that fails to produce the egg] Martin -- % Martin Cracauer [EMAIL PROTECTED] http://www.cons.org/cracauer/ Tel.: (private) +4940 5221829 Fax.: (private) +4940 5228536 To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Proposed floating point changes (Re: Using float emulator on a system with FPU?)
+ * The macro to choose one of these values does these steps: 1) Throw + * away status word bits that cannot be masked. 2) Throw away the bits + * currently masked in the control word, assuming the user isn't + * interested in them anymore. 3) Reinsert status word bit 7 (stack Throwing away the status bits is rather restricting. This restriction could be avoided by passing back the status word within the third argument. A library function could be provided to implement your error code mapping while not limiting the kernel interface. Regards Douglas Crosher To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
Hi Warner, Without commenting on the need to have an emulator in the kernel, doesn't -msoft-float work faster? Yes it does. The kernel has to emulate an 80x87, giving you the following sequence: a) trap to kernel b) decode FP instruction c) fetch operands - possibly including copyin() d) perform operation [this is the only bit the soft-FP code does] e) store result - possibly including copyout() f) return from trap The trap/decode/copyin()/copyout()/rtt are all non-trivial. Or is that a MIPS only thing... It's documented under i386 as well. There is a note that gcc can still emit some hardware FP instructions (to return FP values on the 80x87 stack), but this can be prevented with -mno-fp-ret-in-387 The disadvantage of soft-FP is that you wind up with lots of different libc's - one for h/w FP, one for soft FP and maybe a few more for different FP formats (eg FFP on M68K, or a `cut-a-few-corners-but- give-almost-the-correct-answer-much-faster' IEEE, or single-precision only IEEE). This is less of a problem in an embedded system, where the FP requirements (if needed at all) are well defined. (The problem is that using the wrong library generally doesn't show up until run-time - when the results aren't what you expected). Note that the GNU newlib defines `iprintf()' (and family) as an integer-only printf() to avoid pulling in all the FP overhead when it's not really needed. Peter To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
As Poul-Henning Kamp wrote ... In message [EMAIL PROTECTED], "Bria I suggested about half a year ago that we should officially desupport non-FPU configurations in 4.0. Unfortunately, my resolution was soundly defeated. Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... A lot of 386 machines are being built into places where people will never know they are. We should not kill that market. www.tcja.nl was an ancient 386/40 until a couple of months ago. Low traffic Web servers don't (generally) need an FPU. No/low budget outfits run hardware most people on this list would give away for free (or thrash altogether). It is a M$-ism to discard a complete line of machines with each next release... Just my Dfl 0.02 -- | / o / / _ Arnhem, The Netherlands- Powered by FreeBSD - |/|/ / / /( (_) BulteWWW : http://www.tcja.nl http://www.freebsd.org To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
Wilko Bulte wrote in list.freebsd-current: As Poul-Henning Kamp wrote ... In message [EMAIL PROTECTED], "Bria I suggested about half a year ago that we should officially desupport non-FPU configurations in 4.0. Unfortunately, my resolution was soundly defeated. Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... A lot of 386 machines are being built into places where people will never know they are. We should not kill that market. www.tcja.nl was an ancient 386/40 until a couple of months ago. Low traffic Web servers don't (generally) need an FPU. No/low budget outfits run hardware most people on this list would give away for free (or thrash altogether). It is a M$-ism to discard a complete line of machines with each next release... I agree 100%. My "mobile emergency terminal" is an old 486SX notebook with 3.5 Mbyte RAM and 120 Mbyte HD. It works perfectly well for what I use it for. And I'd hate to have to keep an "old" release around for it while upgrading all other boxes. (Remember, 486SX processors don't have FPUs either.) Regards Oliver PS: No, I'm not doing "make world" on it. (In fact, I removed the compiler toolchain to save HD space.) -- Oliver Fromme, Leibnizstr. 18/61, 38678 Clausthal, Germany (Info: finger userinfo:[EMAIL PROTECTED]) "In jedem Stück Kohle wartet ein Diamant auf seine Geburt" (Terry Pratchett) To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
On Mon, 12 Jul 1999, Garrett Wollman wrote: On Mon, 12 Jul 1999 11:28:04 +0200, Martin Cracauer [EMAIL PROTECTED] said: I'm going to work on FreeBSD's floating point support, but I need to test my changes on systems using the FPU emulators (non-GPL and GPL). I suggested about half a year ago that we should officially desupport non-FPU configurations in 4.0. Unfortunately, my resolution was soundly defeated. there are a lot of 486sx and 386 machines out there doing real work. -GAWollman -- Garrett A. Wollman | O Siem / We are all family / O Siem / We're all the same [EMAIL PROTECTED] | O Siem / The fires of freedom Opinions not those of| Dance in the burning flame MIT, LCS, CRS, or NSA| - Susan Aglukark and Chad Irschick To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
RE: Using float emulator on a system with FPU?
Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... Embedded systems, anyone? True, but how late a version do you really want to run on them? I've left even my P60's at FreeBSD-2.x and have no intention of ever upgrading them. DS To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
On Mon, Jul 12, 1999 at 01:38:57PM -0700, David Schwartz wrote: Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... Embedded systems, anyone? True, but how late a version do you really want to run on them? I've left even my P60's at FreeBSD-2.x and have no intention of ever upgrading them. Lots of new embedded systems are slow pentiums, and quite a few are 486, probably sx some of them ... /Jesper -- Jesper Skriver (JS4261-RIPE), Network manager Tele Danmark DataNet, IP section (AS3292) One Unix to rule them all, One Resolver to find them, One IP to bring them all and in the zone to bind them. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
On Mon, 12 Jul 1999, Brian F. Feldman wrote: Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... I've noticed recently, more and more, Linux is moving into the embedded market quite nicely, and being used on smaller and smaller systems. FreeBSD OTOH has been focusing (albeit not too successfully) on the higher end market. With my recent addition of an 040 powered Mac that I plan to put NetBSD on, this really irks me. I'd love to put some (read: a significant) amount of time getting FreeBSD up and running on this, but there seems to be a lot of resistance to using FreeBSD on smaller/older machines. It almost seems like the requirement is Pentium III, Alpha or bust. And yes, this machine does have an FPU, but there are plenty of *newer* systems without FPUs For instance, doesn't the StrongArm lack an FPU? What about embedded systems? A 486SX would draw a whole lot less power than a Pentium. And it's certainly not like emulating an FPU is an impossible task like say on some LC040s... - alex To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Using float emulator on a system with FPU?
On Mon, 12 Jul 1999, Brian F. Feldman wrote: Why shouldn't we? Noone uses machines without FPUs anymore. What non-ancient CPU doesn't have an FPU? And we're talking about the i386 family here... I've got a few. -- | Matthew N. Dodd | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD | | [EMAIL PROTECTED] | 2 x '84 Volvo 245DL| ix86,sparc,pmax | | http://www.jurai.net/~winter | This Space For Rent | ISO8802.5 4ever | To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message