mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
target/m68k: implement ftan
Using a local m68k floatx80_tan() [copied from previous: Written by Andreas Grabher for Previous, NeXT Computer Emulator.] Signed-off-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20180312202728.23790-2-laurent@vivier.eu>
This commit is contained in:
parent
59667bb167
commit
273401809c
6 changed files with 356 additions and 0 deletions
|
@ -371,4 +371,140 @@ static const uint32_t exp2_tbl2[64] = {
|
|||
0xBFBDBF4A, 0x3FBEC01A, 0x3FBE8CAC, 0xBFBCBB3F,
|
||||
0x3FBEF73A, 0xBFB8B795, 0x3FBEF84B, 0xBFBEF581
|
||||
};
|
||||
|
||||
static const floatx80 pi_tbl[65] = {
|
||||
make_floatx80_init(0xC004, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0xC004, 0xC2C75BCD105D7C23),
|
||||
make_floatx80_init(0xC004, 0xBC7EDCF7FF523611),
|
||||
make_floatx80_init(0xC004, 0xB6365E22EE46F000),
|
||||
make_floatx80_init(0xC004, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0xC004, 0xA9A56078CC3063DD),
|
||||
make_floatx80_init(0xC004, 0xA35CE1A3BB251DCB),
|
||||
make_floatx80_init(0xC004, 0x9D1462CEAA19D7B9),
|
||||
make_floatx80_init(0xC004, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0xC004, 0x9083652488034B96),
|
||||
make_floatx80_init(0xC004, 0x8A3AE64F76F80584),
|
||||
make_floatx80_init(0xC004, 0x83F2677A65ECBF73),
|
||||
make_floatx80_init(0xC003, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0xC003, 0xEEC2D3A087AC669F),
|
||||
make_floatx80_init(0xC003, 0xE231D5F66595DA7B),
|
||||
make_floatx80_init(0xC003, 0xD5A0D84C437F4E58),
|
||||
make_floatx80_init(0xC003, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0xC003, 0xBC7EDCF7FF523611),
|
||||
make_floatx80_init(0xC003, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0xC003, 0xA35CE1A3BB251DCB),
|
||||
make_floatx80_init(0xC003, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0xC003, 0x8A3AE64F76F80584),
|
||||
make_floatx80_init(0xC002, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0xC002, 0xE231D5F66595DA7B),
|
||||
make_floatx80_init(0xC002, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0xC002, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0xC002, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0xC001, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0xC001, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0xC001, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0xC000, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0xBFFF, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x0000, 0x0000000000000000),
|
||||
make_floatx80_init(0x3FFF, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x4000, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x4001, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0x4001, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x4001, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0x4002, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0x4002, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0x4002, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x4002, 0xE231D5F66595DA7B),
|
||||
make_floatx80_init(0x4002, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0x4003, 0x8A3AE64F76F80584),
|
||||
make_floatx80_init(0x4003, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0x4003, 0xA35CE1A3BB251DCB),
|
||||
make_floatx80_init(0x4003, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0x4003, 0xBC7EDCF7FF523611),
|
||||
make_floatx80_init(0x4003, 0xC90FDAA22168C235),
|
||||
make_floatx80_init(0x4003, 0xD5A0D84C437F4E58),
|
||||
make_floatx80_init(0x4003, 0xE231D5F66595DA7B),
|
||||
make_floatx80_init(0x4003, 0xEEC2D3A087AC669F),
|
||||
make_floatx80_init(0x4003, 0xFB53D14AA9C2F2C2),
|
||||
make_floatx80_init(0x4004, 0x83F2677A65ECBF73),
|
||||
make_floatx80_init(0x4004, 0x8A3AE64F76F80584),
|
||||
make_floatx80_init(0x4004, 0x9083652488034B96),
|
||||
make_floatx80_init(0x4004, 0x96CBE3F9990E91A8),
|
||||
make_floatx80_init(0x4004, 0x9D1462CEAA19D7B9),
|
||||
make_floatx80_init(0x4004, 0xA35CE1A3BB251DCB),
|
||||
make_floatx80_init(0x4004, 0xA9A56078CC3063DD),
|
||||
make_floatx80_init(0x4004, 0xAFEDDF4DDD3BA9EE),
|
||||
make_floatx80_init(0x4004, 0xB6365E22EE46F000),
|
||||
make_floatx80_init(0x4004, 0xBC7EDCF7FF523611),
|
||||
make_floatx80_init(0x4004, 0xC2C75BCD105D7C23),
|
||||
make_floatx80_init(0x4004, 0xC90FDAA22168C235)
|
||||
};
|
||||
|
||||
static const float32 pi_tbl2[65] = {
|
||||
const_float32(0x21800000),
|
||||
const_float32(0xA0D00000),
|
||||
const_float32(0xA1E80000),
|
||||
const_float32(0x21480000),
|
||||
const_float32(0xA1200000),
|
||||
const_float32(0x21FC0000),
|
||||
const_float32(0x21100000),
|
||||
const_float32(0xA1580000),
|
||||
const_float32(0x21E00000),
|
||||
const_float32(0x20B00000),
|
||||
const_float32(0xA1880000),
|
||||
const_float32(0x21C40000),
|
||||
const_float32(0x20000000),
|
||||
const_float32(0x21380000),
|
||||
const_float32(0xA1300000),
|
||||
const_float32(0x9FC00000),
|
||||
const_float32(0x21000000),
|
||||
const_float32(0xA1680000),
|
||||
const_float32(0xA0A00000),
|
||||
const_float32(0x20900000),
|
||||
const_float32(0x21600000),
|
||||
const_float32(0xA1080000),
|
||||
const_float32(0x1F800000),
|
||||
const_float32(0xA0B00000),
|
||||
const_float32(0x20800000),
|
||||
const_float32(0xA0200000),
|
||||
const_float32(0x20E00000),
|
||||
const_float32(0x1F000000),
|
||||
const_float32(0x20000000),
|
||||
const_float32(0x20600000),
|
||||
const_float32(0x1F800000),
|
||||
const_float32(0x1F000000),
|
||||
const_float32(0x00000000),
|
||||
const_float32(0x9F000000),
|
||||
const_float32(0x9F800000),
|
||||
const_float32(0xA0600000),
|
||||
const_float32(0xA0000000),
|
||||
const_float32(0x9F000000),
|
||||
const_float32(0xA0E00000),
|
||||
const_float32(0x20200000),
|
||||
const_float32(0xA0800000),
|
||||
const_float32(0x20B00000),
|
||||
const_float32(0x9F800000),
|
||||
const_float32(0x21080000),
|
||||
const_float32(0xA1600000),
|
||||
const_float32(0xA0900000),
|
||||
const_float32(0x20A00000),
|
||||
const_float32(0x21680000),
|
||||
const_float32(0xA1000000),
|
||||
const_float32(0x1FC00000),
|
||||
const_float32(0x21300000),
|
||||
const_float32(0xA1380000),
|
||||
const_float32(0xA0000000),
|
||||
const_float32(0xA1C40000),
|
||||
const_float32(0x21880000),
|
||||
const_float32(0xA0B00000),
|
||||
const_float32(0xA1E00000),
|
||||
const_float32(0x21580000),
|
||||
const_float32(0xA1100000),
|
||||
const_float32(0xA1FC0000),
|
||||
const_float32(0x21200000),
|
||||
const_float32(0xA1480000),
|
||||
const_float32(0x21E80000),
|
||||
const_float32(0x20D00000),
|
||||
const_float32(0xA1800000),
|
||||
};
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue