From 51ae174b2f392cc5d84b9d98f4d93585c559b5e7 Mon Sep 17 00:00:00 2001 From: law Date: Wed, 28 Jul 1999 08:07:13 +0000 Subject: [PATCH] * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code processing. --- gas/ChangeLog | 5 +++++ gas/config/tc-hppa.c | 24 ++++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/gas/ChangeLog b/gas/ChangeLog index d9a2e84d4a..3b535ad5e0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Wed Jul 28 02:04:24 1999 "Jerry Quinn" + + * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code + processing. + 1999-07-27 Ian Lance Taylor * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c index 82e07d3535..073e9e63e8 100644 --- a/gas/config/tc-hppa.c +++ b/gas/config/tc-hppa.c @@ -2468,6 +2468,18 @@ pa_ip (str) continue; } + /* Float operand 1 similar to 'b' but with l/r registers. */ + case 'J': + { + struct pa_11_fp_reg_struct result; + + pa_parse_number (&s, &result); + CHECK_FIELD (result.number_part, 31, 0, 0); + opcode |= result.number_part << 21; + opcode |= (result.l_r_select & 1) << 7; + continue; + } + /* Handle L/R register halves like 'b'. */ case '3': { @@ -2513,6 +2525,18 @@ pa_ip (str) continue; } + /* Float operand 2, like 'x' but with l/r register halves. */ + case 'K': + { + struct pa_11_fp_reg_struct result; + + pa_parse_number (&s, &result); + CHECK_FIELD (result.number_part, 31, 0, 0); + opcode |= (result.number_part & 0x1f) << 16; + opcode |= (result.l_r_select & 1) << 12; + continue; + } + /* Handle a 5 bit register field at 10. */ case '4': { -- 2.11.0