qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 0/5] target/m68k: implement 680x0 FPU (part 3


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH v2 0/5] target/m68k: implement 680x0 FPU (part 3)
Date: Wed, 29 Nov 2017 15:08:24 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

On 29.11.2017 14:59, Peter Maydell wrote:
> On 29 November 2017 at 13:42, Laurent Vivier <address@hidden> wrote:
>> these functions come from:
>>
>> http://previous.alternative-system.com/
>>
>> http://svn.code.sf.net/p/previous/code/trunk/src/softfloat/softfloat.c
>>
>> This is also a modified softfloat, release 2b
>> which is BSD license if I'm correct.
> 
> We can't use softfloat2b code (the part of the license that goes
> "USE OF THIS SOFTWARE IS RESTRICTED TO PERSONS
> AND ORGANIZATIONS [...] WHO FURTHERMORE EFFECTIVELY INDEMNIFY JOHN
> HAUSER AND THE INTERNATIONAL COMPUTER SCIENCE INSTITUTE" isn't
> GPL compatible).
> 
> We can use softfloat2a code, which doesn't have that indemnity clause.

Sigh. That's why WinUAE and Hatari immediately switched back to
softfloat2a (derived from QEMU) after we've identified the problem
there. Looks like the Previous folks forgot to do that step, too :-(

>> This code has also been copied to WinUAE (GPL), where softfloat has been
>> copied from QEMU:
>> https://github.com/tonioni/WinUAE/blob/master/softfloat/softfloat.cpp
> 
> Yes, lots of projects used the softfloat2b code without realising
> it wasn't GPL compatible (including QEMU -- we had a painful job
> to fix things up and convert to the 2a codebase a while back).
> 
>> But I think the bad news comes later:
>>
>> all the other functions (sin, cos, tan, log, exp, ...) found in previous
>> (softfloat_fpsp.c) are "derived" from NeXT library FPSP:
>>
>> http://svn.code.sf.net/p/previous/code/trunk/src/softfloat/softfloat_fpsp.c
>>
>> /*============================================================================
>>
>>  This C source file is an extension to the SoftFloat IEC/IEEE Floating-point
>>  Arithmetic Package, Release 2a.
>>
>>  Written by Andreas Grabher for Previous, NeXT Computer Emulator.
>>
>> =============================================================================*/
>> ...
>> /*----------------------------------------------------------------------------
>> | Algorithms for transcendental functions supported by MC68881 and MC68882
>> | mathematical coprocessors. The functions are derived from FPSP library.
>> *----------------------------------------------------------------------------*/
>>
>> FPSP library can be found:
>>
>> https://ftp.nice.ch/pub/next/developer/hardware/m68k/
>>
>> And the assembly source code is not free at all:
>>
>> https://ftp.nice.ch/pub/next/developer/hardware/m68k/_libFPSP.1.p2.N.s/l_fpsp.h
>>
>>
>> |               Copyright (C) Motorola, Inc. 1991
>> |                       All Rights Reserved
>> |
>> |       THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF MOTOROLA
>> |       The copyright notice above does not evidence any
>> |       actual or intended publication of such source code.
>>
>>
>> So I'm wondering what license apply to the C version found in "Previous".
> 
> Good question. It's clearly not copied code (since the FPSP library is
> all native m68k assembly), but presumably it's the same algorithms
> transliterated into C...

There also seem to be other versions of that library available, e.g.:

https://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/sys/arch/m68k/fpsp/l_fpsp.h

Maybe Andreas (now on CC: ) could clarify which version he used / how
the C sources were developed?

 Thomas



reply via email to

[Prev in Thread] Current Thread [Next in Thread]