mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-27 14:00:30 +00:00
2003-09-09 Dave Brolley <brolley@redhat.com>
* frv.c (do_media_average): Select machine using a switch.
This commit is contained in:
parent
964869950a
commit
f9e18f5a11
@ -1,3 +1,7 @@
|
||||
2003-09-09 Dave Brolley <brolley@redhat.com>
|
||||
|
||||
* frv.c (do_media_average): Select machine using a switch.
|
||||
|
||||
2003-09-08 Dave Brolley <brolley@redhat.com>
|
||||
|
||||
On behalf of Doug Evans <dje@sebabeach.org>
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* frv simulator support code
|
||||
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
|
||||
Contributed by Red Hat.
|
||||
|
||||
This file is part of the GNU simulators.
|
||||
@ -1049,14 +1049,17 @@ do_media_average (SIM_CPU *current_cpu, HI arg1, HI arg2)
|
||||
SIM_DESC sd = CPU_STATE (current_cpu);
|
||||
SI sum = (arg1 + arg2);
|
||||
HI result = sum >> 1;
|
||||
int rounding_value;
|
||||
|
||||
/* On fr400, check the rounding mode. On other machines rounding is always
|
||||
toward negative infinity and the result is already correctly rounded. */
|
||||
if (STATE_ARCHITECTURE (sd)->mach == bfd_mach_fr400)
|
||||
switch (STATE_ARCHITECTURE (sd)->mach)
|
||||
{
|
||||
/* Need to check rounding mode. */
|
||||
case bfd_mach_fr400:
|
||||
/* Check whether rounding will be required. Rounding will be required
|
||||
if the sum is an odd number. */
|
||||
int rounding_value = sum & 1;
|
||||
rounding_value = sum & 1;
|
||||
if (rounding_value)
|
||||
{
|
||||
USI msr0 = GET_MSR (0);
|
||||
@ -1098,6 +1101,9 @@ do_media_average (SIM_CPU *current_cpu, HI arg1, HI arg2)
|
||||
++result;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return result;
|
||||
|
Loading…
Reference in New Issue
Block a user