diff options
Diffstat (limited to 'sim/sh64/sem-media.c')
-rw-r--r-- | sim/sh64/sem-media.c | 1134 |
1 files changed, 744 insertions, 390 deletions
diff --git a/sim/sh64/sem-media.c b/sim/sh64/sem-media.c index d9f0eb9d533..aee11ccf174 100644 --- a/sim/sh64/sem-media.c +++ b/sim/sh64/sem-media.c @@ -2,9 +2,9 @@ THIS FILE IS MACHINE GENERATED WITH CGEN. -Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. +Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -This file is part of the GNU Simulators. +This file is part of the GNU simulators. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -215,7 +215,7 @@ SEM_FN_NAME (sh64_media,add) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -236,7 +236,7 @@ SEM_FN_NAME (sh64_media,addl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -257,7 +257,7 @@ SEM_FN_NAME (sh64_media,addi) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -278,7 +278,7 @@ SEM_FN_NAME (sh64_media,addil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (ADDSI (EXTSISI (FLD (f_disp10)), SUBWORDDISI (GET_H_GR (FLD (f_left)), 1))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -299,7 +299,7 @@ SEM_FN_NAME (sh64_media,addzl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTSIDI (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -337,7 +337,7 @@ SEM_FN_NAME (sh64_media,and) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ANDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -358,7 +358,7 @@ SEM_FN_NAME (sh64_media,andc) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ANDDI (GET_H_GR (FLD (f_left)), INVDI (GET_H_GR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -379,7 +379,7 @@ SEM_FN_NAME (sh64_media,andi) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ANDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -564,7 +564,7 @@ SEM_FN_NAME (sh64_media,blink) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (ADDDI (pc, 4), 1); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } { UDI opval = CPU (h_tr[FLD (f_trb)]); @@ -700,7 +700,7 @@ SEM_FN_NAME (sh64_media,byterev) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = tmp_result; SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -722,7 +722,7 @@ SEM_FN_NAME (sh64_media,cmpeq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ((EQDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))) ? (1) : (0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -743,7 +743,7 @@ SEM_FN_NAME (sh64_media,cmpgt) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ((GTDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))) ? (1) : (0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -764,7 +764,7 @@ SEM_FN_NAME (sh64_media,cmpgtu) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ((GTUDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))) ? (1) : (0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -787,7 +787,7 @@ if (EQDI (GET_H_GR (FLD (f_left)), 0)) { DI opval = GET_H_GR (FLD (f_right)); SET_H_GR (FLD (f_dest), opval); written |= (1 << 2); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -812,7 +812,7 @@ if (NEDI (GET_H_GR (FLD (f_left)), 0)) { DI opval = GET_H_GR (FLD (f_right)); SET_H_GR (FLD (f_dest), opval); written |= (1 << 2); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -835,7 +835,7 @@ SEM_FN_NAME (sh64_media,fabsd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fabsd (current_cpu, GET_H_DR (FLD (f_left_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -856,7 +856,7 @@ SEM_FN_NAME (sh64_media,fabss) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fabss (current_cpu, CPU (h_fr[FLD (f_left_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -877,7 +877,7 @@ SEM_FN_NAME (sh64_media,faddd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_faddd (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -898,7 +898,7 @@ SEM_FN_NAME (sh64_media,fadds) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fadds (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -919,7 +919,7 @@ SEM_FN_NAME (sh64_media,fcmpeqd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpeqd (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -940,7 +940,7 @@ SEM_FN_NAME (sh64_media,fcmpeqs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpeqs (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)]))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -961,7 +961,7 @@ SEM_FN_NAME (sh64_media,fcmpged) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpged (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -982,7 +982,7 @@ SEM_FN_NAME (sh64_media,fcmpges) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpges (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)]))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1003,7 +1003,7 @@ SEM_FN_NAME (sh64_media,fcmpgtd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpgtd (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1024,7 +1024,7 @@ SEM_FN_NAME (sh64_media,fcmpgts) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpgts (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)]))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1045,7 +1045,7 @@ SEM_FN_NAME (sh64_media,fcmpund) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpund (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1066,7 +1066,7 @@ SEM_FN_NAME (sh64_media,fcmpuns) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTBIDI (sh64_fcmpuns (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)]))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1087,7 +1087,7 @@ SEM_FN_NAME (sh64_media,fcnvds) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fcnvds (current_cpu, GET_H_DR (FLD (f_left_right))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1108,7 +1108,7 @@ SEM_FN_NAME (sh64_media,fcnvsd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fcnvsd (current_cpu, CPU (h_fr[FLD (f_left_right)])); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1129,7 +1129,7 @@ SEM_FN_NAME (sh64_media,fdivd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fdivd (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1150,7 +1150,7 @@ SEM_FN_NAME (sh64_media,fdivs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fdivs (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1198,7 +1198,7 @@ SEM_FN_NAME (sh64_media,fiprs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = tmp_temp; CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } } @@ -1220,7 +1220,7 @@ SEM_FN_NAME (sh64_media,fldd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = GETMEMDF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp10x8))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1244,12 +1244,12 @@ SEM_FN_NAME (sh64_media,fldp) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp10x8))); CPU (h_fr[tmp_f]) = opval; - TRACE_RESULT (current_cpu, abuf, "fr-f", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), ADDSI (FLD (f_disp10x8), 4))); CPU (h_fr[ADDQI (tmp_f, 1)]) = opval; - TRACE_RESULT (current_cpu, abuf, "fr-add--DFLT-f-1", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } } @@ -1271,7 +1271,7 @@ SEM_FN_NAME (sh64_media,flds) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp10x4))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1292,7 +1292,7 @@ SEM_FN_NAME (sh64_media,fldxd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = GETMEMDF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1316,12 +1316,12 @@ SEM_FN_NAME (sh64_media,fldxp) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))); CPU (h_fr[tmp_f]) = opval; - TRACE_RESULT (current_cpu, abuf, "fr-f", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), ADDDI (GET_H_GR (FLD (f_right)), 4))); CPU (h_fr[ADDQI (tmp_f, 1)]) = opval; - TRACE_RESULT (current_cpu, abuf, "fr-add--DFLT-f-1", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } } @@ -1343,7 +1343,7 @@ SEM_FN_NAME (sh64_media,fldxs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = GETMEMSF (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1364,7 +1364,7 @@ SEM_FN_NAME (sh64_media,floatld) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_floatld (current_cpu, CPU (h_fr[FLD (f_left_right)])); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1385,7 +1385,7 @@ SEM_FN_NAME (sh64_media,floatls) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_floatls (current_cpu, CPU (h_fr[FLD (f_left_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1406,7 +1406,7 @@ SEM_FN_NAME (sh64_media,floatqd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_floatqd (current_cpu, GET_H_DR (FLD (f_left_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1427,7 +1427,7 @@ SEM_FN_NAME (sh64_media,floatqs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_floatqs (current_cpu, GET_H_DR (FLD (f_left_right))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1448,7 +1448,7 @@ SEM_FN_NAME (sh64_media,fmacs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fadds (current_cpu, CPU (h_fr[FLD (f_dest)]), sh64_fmuls (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)]))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1469,7 +1469,7 @@ SEM_FN_NAME (sh64_media,fmovd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = GET_H_DR (FLD (f_left_right)); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1490,7 +1490,7 @@ SEM_FN_NAME (sh64_media,fmovdq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SUBWORDDFDI (GET_H_DR (FLD (f_left_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1511,7 +1511,7 @@ SEM_FN_NAME (sh64_media,fmovls) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = SUBWORDSISF (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1532,7 +1532,7 @@ SEM_FN_NAME (sh64_media,fmovqd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = SUBWORDDIDF (GET_H_GR (FLD (f_left))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1553,7 +1553,7 @@ SEM_FN_NAME (sh64_media,fmovs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = CPU (h_fr[FLD (f_left_right)]); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1574,7 +1574,7 @@ SEM_FN_NAME (sh64_media,fmovsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SUBWORDSFSI (CPU (h_fr[FLD (f_left_right)]))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -1595,7 +1595,7 @@ SEM_FN_NAME (sh64_media,fmuld) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fmuld (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1616,7 +1616,7 @@ SEM_FN_NAME (sh64_media,fmuls) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fmuls (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1637,7 +1637,7 @@ SEM_FN_NAME (sh64_media,fnegd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fnegd (current_cpu, GET_H_DR (FLD (f_left_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1658,7 +1658,7 @@ SEM_FN_NAME (sh64_media,fnegs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fnegs (current_cpu, CPU (h_fr[FLD (f_left_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1696,7 +1696,7 @@ SEM_FN_NAME (sh64_media,fsqrtd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fsqrtd (current_cpu, GET_H_DR (FLD (f_left_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1717,7 +1717,7 @@ SEM_FN_NAME (sh64_media,fsqrts) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fsqrts (current_cpu, CPU (h_fr[FLD (f_left_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1882,7 +1882,7 @@ SEM_FN_NAME (sh64_media,fsubd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_fsubd (current_cpu, GET_H_DR (FLD (f_left)), GET_H_DR (FLD (f_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1903,7 +1903,7 @@ SEM_FN_NAME (sh64_media,fsubs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_fsubs (current_cpu, CPU (h_fr[FLD (f_left)]), CPU (h_fr[FLD (f_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1924,7 +1924,7 @@ SEM_FN_NAME (sh64_media,ftrcdl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_ftrcdl (current_cpu, GET_H_DR (FLD (f_left_right))); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1945,7 +1945,7 @@ SEM_FN_NAME (sh64_media,ftrcsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SF opval = sh64_ftrcsl (current_cpu, CPU (h_fr[FLD (f_left_right)])); CPU (h_fr[FLD (f_dest)]) = opval; - TRACE_RESULT (current_cpu, abuf, "frf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "fr", 'f', opval); } return vpc; @@ -1966,7 +1966,7 @@ SEM_FN_NAME (sh64_media,ftrcdq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_ftrcdq (current_cpu, GET_H_DR (FLD (f_left_right))); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -1987,7 +1987,7 @@ SEM_FN_NAME (sh64_media,ftrcsq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DF opval = sh64_ftrcsq (current_cpu, CPU (h_fr[FLD (f_left_right)])); SET_H_DR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "drf", 'f', opval); + TRACE_RESULT (current_cpu, abuf, "dr", 'f', opval); } return vpc; @@ -2042,7 +2042,7 @@ SEM_FN_NAME (sh64_media,getcon) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = GET_H_CR (FLD (f_left)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2063,7 +2063,7 @@ SEM_FN_NAME (sh64_media,gettr) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = CPU (h_tr[FLD (f_trb)]); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2101,7 +2101,7 @@ SEM_FN_NAME (sh64_media,ldb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTQIDI (GETMEMQI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2122,7 +2122,7 @@ SEM_FN_NAME (sh64_media,ldl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (GETMEMSI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10x4))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2143,7 +2143,7 @@ SEM_FN_NAME (sh64_media,ldq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = GETMEMDI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10x8)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2164,7 +2164,7 @@ SEM_FN_NAME (sh64_media,ldub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTQIDI (GETMEMQI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2185,7 +2185,7 @@ SEM_FN_NAME (sh64_media,lduw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTHIDI (GETMEMHI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10x2))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2206,7 +2206,7 @@ SEM_FN_NAME (sh64_media,ldw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTHIDI (GETMEMHI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_disp10x2))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2218,14 +2218,62 @@ SEM_FN_NAME (sh64_media,ldw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,ldhil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.fmt_empty.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); -((void) 0); /*nop*/ +{ + DI tmp_addr; + QI tmp_bytecount; + SI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = ADDDI (ANDDI (tmp_addr, 3), 1); + tmp_val = 0; +if (ANDQI (tmp_bytecount, 4)) { + { + DI opval = EXTSIDI (GETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -4))); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDSI (SLLSI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4)))); +} +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDSI (SLLSI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} + { + DI opval = EXTSIDI (tmp_val); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} else { +{ +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDSI (SLLSI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDSI (SLLSI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4)))); +} + { + DI opval = EXTSIDI (SLLSI (tmp_val, SUBSI (32, MULSI (8, tmp_bytecount)))); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} +} +} + abuf->written = written; return vpc; #undef FLD } @@ -2235,14 +2283,68 @@ SEM_FN_NAME (sh64_media,ldhil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,ldhiq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.fmt_empty.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); -((void) 0); /*nop*/ +{ + DI tmp_addr; + QI tmp_bytecount; + DI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = ADDDI (ANDDI (tmp_addr, 7), 1); + tmp_val = 0; +if (ANDQI (tmp_bytecount, 8)) { + { + DI opval = GETMEMDI (current_cpu, pc, ANDDI (tmp_addr, -8)); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ +if (ANDQI (tmp_bytecount, 4)) { + tmp_val = ADDDI (SLLDI (tmp_val, 32), ZEXTSIDI (GETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -8)))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDDI (SLLDI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4)))); +} +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDDI (SLLDI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} + { + DI opval = tmp_val; + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} else { +{ +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDDI (SLLDI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDDI (SLLDI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4)))); +} +if (ANDQI (tmp_bytecount, 4)) { + tmp_val = ADDDI (SLLDI (tmp_val, 32), ZEXTSIDI (GETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -8)))); +} + { + DI opval = SLLDI (tmp_val, SUBSI (64, MULSI (8, tmp_bytecount))); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} +} +} + abuf->written = written; return vpc; #undef FLD } @@ -2252,14 +2354,62 @@ SEM_FN_NAME (sh64_media,ldhiq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,ldlol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.fmt_empty.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); -((void) 0); /*nop*/ +{ + DI tmp_addr; + QI tmp_bytecount; + SI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = SUBSI (4, ANDDI (tmp_addr, 3)); + tmp_val = 0; +if (ANDQI (tmp_bytecount, 4)) { + { + DI opval = EXTSIDI (GETMEMSI (current_cpu, pc, tmp_addr)); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDSI (SLLSI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDSI (SLLSI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2)))); +} + { + DI opval = EXTSIDI (SLLSI (tmp_val, SUBSI (32, MULSI (8, tmp_bytecount)))); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} else { +{ +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDSI (SLLSI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2)))); +} +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDSI (SLLSI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} + { + DI opval = EXTSIDI (tmp_val); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} +} +} + abuf->written = written; return vpc; #undef FLD } @@ -2269,14 +2419,68 @@ SEM_FN_NAME (sh64_media,ldlol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,ldloq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.fmt_empty.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); -((void) 0); /*nop*/ +{ + DI tmp_addr; + QI tmp_bytecount; + DI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = SUBSI (8, ANDDI (tmp_addr, 7)); + tmp_val = 0; +if (ANDQI (tmp_bytecount, 8)) { + { + DI opval = GETMEMDI (current_cpu, pc, tmp_addr); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDDI (SLLDI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDDI (SLLDI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2)))); +} +if (ANDQI (tmp_bytecount, 4)) { + tmp_val = ADDDI (SLLDI (tmp_val, 32), ZEXTSIDI (GETMEMSI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 3), -4)))); +} + { + DI opval = SLLDI (tmp_val, SUBSI (64, MULSI (8, tmp_bytecount))); + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} else { +{ +if (ANDQI (tmp_bytecount, 4)) { + tmp_val = ADDDI (SLLDI (tmp_val, 32), ZEXTSIDI (GETMEMSI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 3), -4)))); +} +if (ANDQI (tmp_bytecount, 2)) { + tmp_val = ADDDI (SLLDI (tmp_val, 16), ZEXTHIDI (GETMEMHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2)))); +} +if (ANDQI (tmp_bytecount, 1)) { + tmp_val = ADDDI (SLLDI (tmp_val, 8), ZEXTQIDI (GETMEMQI (current_cpu, pc, tmp_addr))); +} + { + DI opval = tmp_val; + SET_H_GR (FLD (f_dest), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); + } +} +} +} +} + abuf->written = written; return vpc; #undef FLD } @@ -2295,7 +2499,7 @@ SEM_FN_NAME (sh64_media,ldxb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTQIDI (GETMEMQI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2316,7 +2520,7 @@ SEM_FN_NAME (sh64_media,ldxl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (GETMEMSI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2337,7 +2541,7 @@ SEM_FN_NAME (sh64_media,ldxq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = GETMEMDI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2358,7 +2562,7 @@ SEM_FN_NAME (sh64_media,ldxub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTQIDI (GETMEMUQI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2379,7 +2583,7 @@ SEM_FN_NAME (sh64_media,ldxuw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ZEXTHIDI (GETMEMUHI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2400,7 +2604,7 @@ SEM_FN_NAME (sh64_media,ldxw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTHIDI (GETMEMHI (current_cpu, pc, ADDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2426,7 +2630,7 @@ SEM_FN_NAME (sh64_media,mabsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2457,7 +2661,7 @@ SEM_FN_NAME (sh64_media,mabsw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2484,7 +2688,7 @@ SEM_FN_NAME (sh64_media,maddl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2515,7 +2719,7 @@ SEM_FN_NAME (sh64_media,maddw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2537,12 +2741,12 @@ SEM_FN_NAME (sh64_media,maddsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = ((LTSI (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)), SLLSI (1, SUBSI (32, 1)))) ? (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result1 = ((LTSI (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)), SLLSI (1, SUBSI (32, 1)))) ? (ADDSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, SUBSI (32, 1)))) ? (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result1 = ((LTDI (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, SUBSI (32, 1)))) ? (ADDDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2570,18 +2774,18 @@ SEM_FN_NAME (sh64_media,maddsub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result1 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result2 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result3 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result4 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result5 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result6 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result7 = ((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), 0)) ? (0) : (((LTQI (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), SLLQI (1, 8))) ? (ADDQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result0 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result1 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result2 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result3 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result4 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result5 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result6 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result7 = ((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), MAKEDI (0, 0))) ? (0) : (((LTDI (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, 8))) ? (ADDDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)))) : (SUBQI (SLLQI (1, 8), 1))))); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2605,14 +2809,14 @@ SEM_FN_NAME (sh64_media,maddsw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_result0 = ((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)), SLLHI (1, SUBSI (16, 1)))) ? (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result1 = ((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)), SLLHI (1, SUBSI (16, 1)))) ? (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result2 = ((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)), SLLHI (1, SUBSI (16, 1)))) ? (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result3 = ((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)), SLLHI (1, SUBSI (16, 1)))) ? (ADDHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))), SLLDI (1, SUBSI (16, 1)))) ? (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result1 = ((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))), SLLDI (1, SUBSI (16, 1)))) ? (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result2 = ((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, SUBSI (16, 1)))) ? (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result3 = ((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, SUBSI (16, 1)))) ? (ADDDI (EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), EXTHIDI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2651,7 +2855,7 @@ SEM_FN_NAME (sh64_media,mcmpeqb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2678,7 +2882,7 @@ SEM_FN_NAME (sh64_media,mcmpeql) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2709,7 +2913,7 @@ SEM_FN_NAME (sh64_media,mcmpeqw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2736,7 +2940,7 @@ SEM_FN_NAME (sh64_media,mcmpgtl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2775,7 +2979,7 @@ SEM_FN_NAME (sh64_media,mcmpgtub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2806,7 +3010,7 @@ SEM_FN_NAME (sh64_media,mcmpgtw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2828,7 +3032,7 @@ SEM_FN_NAME (sh64_media,mcmv) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (ANDDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))), ANDDI (GET_H_GR (FLD (f_dest)), INVDI (GET_H_GR (FLD (f_right))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -2851,14 +3055,14 @@ SEM_FN_NAME (sh64_media,mcnvslw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_result0 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SLLHI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result1 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SLLHI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result2 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0), SLLHI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result3 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1), SLLHI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SLLDI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result1 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SLLDI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result2 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1), SLLDI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result3 = ((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0), SLLDI (1, SUBSI (16, 1)))) ? (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2886,18 +3090,18 @@ SEM_FN_NAME (sh64_media,mcnvswb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result1 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result2 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result3 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result4 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result5 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result6 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); - tmp_result7 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), NEGQI (SLLQI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), SLLQI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result0 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result1 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result2 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result3 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result4 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result5 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result6 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); + tmp_result7 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), NEGDI (SLLDI (1, SUBSI (8, 1))))) ? (NEGQI (SLLQI (1, SUBSI (8, 1)))) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), SLLDI (1, SUBSI (8, 1)))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)) : (SUBQI (SLLQI (1, SUBSI (8, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2925,18 +3129,18 @@ SEM_FN_NAME (sh64_media,mcnvswub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result1 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result2 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result3 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result4 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result5 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result6 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result7 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), 0)) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), SLLQI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result0 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result1 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result2 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result3 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result4 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result5 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result6 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1)) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result7 = ((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), MAKEDI (0, 0))) ? (0) : (((LTHI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0), SLLDI (1, 8))) ? (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0)) : (SUBQI (SLLQI (1, 8), 1))))); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2959,15 +3163,15 @@ SEM_FN_NAME (sh64_media,mextr1) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 1)); + tmp_count = MULQI (8, 1); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 1); + tmp_count = MULQI (8, SUBQI (8, 1)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -2990,15 +3194,15 @@ SEM_FN_NAME (sh64_media,mextr2) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 2)); + tmp_count = MULQI (8, 2); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 2); + tmp_count = MULQI (8, SUBQI (8, 2)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3021,15 +3225,15 @@ SEM_FN_NAME (sh64_media,mextr3) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 3)); + tmp_count = MULQI (8, 3); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 3); + tmp_count = MULQI (8, SUBQI (8, 3)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3052,15 +3256,15 @@ SEM_FN_NAME (sh64_media,mextr4) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 4)); + tmp_count = MULQI (8, 4); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 4); + tmp_count = MULQI (8, SUBQI (8, 4)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3083,15 +3287,15 @@ SEM_FN_NAME (sh64_media,mextr5) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 5)); + tmp_count = MULQI (8, 5); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 5); + tmp_count = MULQI (8, SUBQI (8, 5)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3114,15 +3318,15 @@ SEM_FN_NAME (sh64_media,mextr6) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 6)); + tmp_count = MULQI (8, 6); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 6); + tmp_count = MULQI (8, SUBQI (8, 6)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3145,15 +3349,15 @@ SEM_FN_NAME (sh64_media,mextr7) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_count; DI tmp_mask; DI tmp_rhs; - tmp_count = MULQI (8, SUBQI (8, 7)); + tmp_count = MULQI (8, 7); tmp_mask = SLLDI (INVSI (0), tmp_count); tmp_rhs = SRLDI (ANDDI (GET_H_GR (FLD (f_left)), tmp_mask), tmp_count); - tmp_count = MULQI (8, 7); + tmp_count = MULQI (8, SUBQI (8, 7)); tmp_mask = SRLDI (INVSI (0), tmp_count); { DI opval = ORDI (tmp_rhs, SLLDI (ANDDI (GET_H_GR (FLD (f_right)), tmp_mask), tmp_count)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3176,18 +3380,18 @@ SEM_FN_NAME (sh64_media,mmacfxwl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) SI tmp_temp; SI tmp_result1; SI tmp_result0; - tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 0); - tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 1); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); - tmp_temp = ((LTSI (SLLSI (tmp_temp, 1), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (tmp_temp, 1), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result0 = ((LTSI (ADDSI (tmp_result0, tmp_temp), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (ADDSI (tmp_result0, tmp_temp), SLLSI (1, SUBSI (32, 1)))) ? (ADDSI (tmp_result0, tmp_temp)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); - tmp_temp = ((LTSI (SLLSI (tmp_temp, 1), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (tmp_temp, 1), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result1 = ((LTSI (ADDSI (tmp_result1, tmp_temp), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (ADDSI (tmp_result1, tmp_temp), SLLSI (1, SUBSI (32, 1)))) ? (ADDSI (tmp_result1, tmp_temp)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 1); + tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 0); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); + tmp_temp = ((LTDI (SLLDI (tmp_temp, 1), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (tmp_temp, 1), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (ADDDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (ADDDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp)), SLLDI (1, SUBSI (32, 1)))) ? (ADDDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); + tmp_temp = ((LTDI (SLLDI (tmp_temp, 1), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (tmp_temp, 1), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result1 = ((LTDI (ADDDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (ADDDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp)), SLLDI (1, SUBSI (32, 1)))) ? (ADDDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3210,18 +3414,18 @@ SEM_FN_NAME (sh64_media,mmacnfx_wl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) SI tmp_temp; SI tmp_result1; SI tmp_result0; - tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 0); - tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 1); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); - tmp_temp = ((LTSI (SLLSI (tmp_temp, 1), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (tmp_temp, 1), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result0 = ((LTSI (SUBSI (tmp_result0, tmp_temp), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SUBSI (tmp_result0, tmp_temp), SLLSI (1, SUBSI (32, 1)))) ? (SUBSI (tmp_result0, tmp_temp)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); - tmp_temp = ((LTSI (SLLSI (tmp_temp, 1), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (tmp_temp, 1), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result1 = ((LTSI (SUBSI (tmp_result1, tmp_temp), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SUBSI (tmp_result1, tmp_temp), SLLSI (1, SUBSI (32, 1)))) ? (SUBSI (tmp_result1, tmp_temp)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 1); + tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_dest)), 0); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); + tmp_temp = ((LTDI (SLLDI (tmp_temp, 1), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (tmp_temp, 1), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (SUBDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SUBDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp)), SLLDI (1, SUBSI (32, 1)))) ? (SUBDI (EXTSIDI (tmp_result0), EXTSIDI (tmp_temp))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); + tmp_temp = ((LTDI (SLLDI (tmp_temp, 1), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (tmp_temp, 1), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (tmp_temp, 1)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result1 = ((LTDI (SUBDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SUBDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp)), SLLDI (1, SUBSI (32, 1)))) ? (SUBDI (EXTSIDI (tmp_result1), EXTSIDI (tmp_temp))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3248,7 +3452,7 @@ SEM_FN_NAME (sh64_media,mmull) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3279,7 +3483,7 @@ SEM_FN_NAME (sh64_media,mmulw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3302,14 +3506,14 @@ SEM_FN_NAME (sh64_media,mmulfxl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) DI tmp_temp; SI tmp_result0; SI tmp_result1; - tmp_temp = MULDI (ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))); - tmp_result0 = ((LTDI (SRADI (tmp_temp, 31), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SRADI (tmp_temp, 31), SLLSI (1, SUBSI (32, 1)))) ? (SRADI (tmp_temp, 31)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); tmp_temp = MULDI (ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))); - tmp_result1 = ((LTDI (SRADI (tmp_temp, 31), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SRADI (tmp_temp, 31), SLLSI (1, SUBSI (32, 1)))) ? (SRADI (tmp_temp, 31)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (SRADI (tmp_temp, 31), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SRADI (tmp_temp, 31), SLLDI (1, SUBSI (32, 1)))) ? (SRADI (tmp_temp, 31)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_temp = MULDI (ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))); + tmp_result1 = ((LTDI (SRADI (tmp_temp, 31), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SRADI (tmp_temp, 31), SLLDI (1, SUBSI (32, 1)))) ? (SRADI (tmp_temp, 31)) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3334,18 +3538,18 @@ SEM_FN_NAME (sh64_media,mmulfxw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result1; HI tmp_result2; HI tmp_result3; - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); - tmp_result0 = ((LTSI (SRASI (tmp_temp, 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); - tmp_result1 = ((LTSI (SRASI (tmp_temp, 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); - tmp_result2 = ((LTSI (SRASI (tmp_temp, 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); - tmp_result3 = ((LTSI (SRASI (tmp_temp, 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTSI (SRASI (tmp_temp, 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); + tmp_result1 = ((LTSI (SRASI (tmp_temp, 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); + tmp_result2 = ((LTSI (SRASI (tmp_temp, 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); + tmp_result3 = ((LTSI (SRASI (tmp_temp, 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (tmp_temp, 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (tmp_temp, 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3372,18 +3576,18 @@ SEM_FN_NAME (sh64_media,mmulfxrpw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result3; HI tmp_c; tmp_c = SLLSI (1, 14); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); - tmp_result0 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); - tmp_result1 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); - tmp_result2 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); - tmp_result3 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLHI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); + tmp_result1 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); + tmp_result2 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_temp = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); + tmp_result3 = ((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTSI (SRASI (ADDSI (tmp_temp, tmp_c), 15), SLLDI (1, SUBSI (16, 1)))) ? (SRASI (ADDSI (tmp_temp, tmp_c), 15)) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3405,12 +3609,12 @@ SEM_FN_NAME (sh64_media,mmulhiwl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); - tmp_result1 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); + tmp_result0 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); + tmp_result1 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3432,12 +3636,12 @@ SEM_FN_NAME (sh64_media,mmullowl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0))); - tmp_result1 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1))); + tmp_result0 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3))); + tmp_result1 = MULSI (ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2)), ZEXTHISI (SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3465,7 +3669,7 @@ SEM_FN_NAME (sh64_media,mmulsumwq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDDI (GET_H_GR (FLD (f_dest)), tmp_acc); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3487,7 +3691,7 @@ SEM_FN_NAME (sh64_media,movi) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (FLD (f_imm16)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -3511,7 +3715,7 @@ SEM_FN_NAME (sh64_media,mpermw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_control = ANDQI (GET_H_GR (FLD (f_right)), 63); + tmp_control = ANDQI (GET_H_GR (FLD (f_right)), 255); tmp_result0 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), SUBSI (3, ANDQI (tmp_control, 3))); tmp_result1 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), SUBSI (3, ANDQI (SRLQI (tmp_control, 2), 3))); tmp_result2 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), SUBSI (3, ANDQI (SRLQI (tmp_control, 4), 3))); @@ -3519,7 +3723,7 @@ SEM_FN_NAME (sh64_media,mpermw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3540,7 +3744,7 @@ SEM_FN_NAME (sh64_media,msadubq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI tmp_acc; - tmp_acc = ABSDI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))); + tmp_acc = ABSDI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))); tmp_acc = ADDDI (tmp_acc, ABSQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)))); tmp_acc = ADDDI (tmp_acc, ABSQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)))); tmp_acc = ADDDI (tmp_acc, ABSQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)))); @@ -3551,7 +3755,7 @@ SEM_FN_NAME (sh64_media,msadubq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDDI (GET_H_GR (FLD (f_dest)), tmp_acc); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3573,12 +3777,12 @@ SEM_FN_NAME (sh64_media,mshaldsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = ((LTSI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31)), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result1 = ((LTSI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31)), SLLSI (1, SUBSI (32, 1)))) ? (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31)), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 31))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result1 = ((LTDI (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31)), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31)), SLLDI (1, SUBSI (32, 1)))) ? (SLLDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 31))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3602,14 +3806,14 @@ SEM_FN_NAME (sh64_media,mshaldsw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_result0 = ((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLHI (1, SUBSI (16, 1)))) ? (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result1 = ((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLHI (1, SUBSI (16, 1)))) ? (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result2 = ((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLHI (1, SUBSI (16, 1)))) ? (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result3 = ((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTHI (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLHI (1, SUBSI (16, 1)))) ? (SLLHI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLDI (1, SUBSI (16, 1)))) ? (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result1 = ((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLDI (1, SUBSI (16, 1)))) ? (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result2 = ((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLDI (1, SUBSI (16, 1)))) ? (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result3 = ((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15)), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15)), SLLDI (1, SUBSI (16, 1)))) ? (SLLDI (SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0), ANDDI (GET_H_GR (FLD (f_right)), 15))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3636,7 +3840,7 @@ SEM_FN_NAME (sh64_media,mshardl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3667,7 +3871,7 @@ SEM_FN_NAME (sh64_media,mshardw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3689,7 +3893,7 @@ SEM_FN_NAME (sh64_media,mshardsq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ((LTDI (SRADI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63)), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGDI (SLLDI (1, SUBSI (16, 1)))) : (((LTDI (SRADI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63)), SLLDI (1, SUBSI (16, 1)))) ? (SRADI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63))) : (SUBDI (SLLDI (1, SUBSI (16, 1)), 1))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -3716,18 +3920,18 @@ SEM_FN_NAME (sh64_media,mshfhib) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4); - tmp_result1 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4); - tmp_result2 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5); - tmp_result3 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5); - tmp_result4 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6); - tmp_result5 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6); - tmp_result6 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7); - tmp_result7 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7); + tmp_result0 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3); + tmp_result1 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3); + tmp_result2 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2); + tmp_result3 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2); + tmp_result4 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1); + tmp_result5 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1); + tmp_result6 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0); + tmp_result7 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3749,12 +3953,12 @@ SEM_FN_NAME (sh64_media,mshfhil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_left)), 1); - tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_right)), 1); + tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_left)), 0); + tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_right)), 0); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3778,14 +3982,14 @@ SEM_FN_NAME (sh64_media,mshfhiw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_result0 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2); - tmp_result1 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2); - tmp_result2 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3); - tmp_result3 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3); + tmp_result0 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1); + tmp_result1 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1); + tmp_result2 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0); + tmp_result3 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3813,18 +4017,18 @@ SEM_FN_NAME (sh64_media,mshflob) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0); - tmp_result1 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0); - tmp_result2 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1); - tmp_result3 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1); - tmp_result4 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2); - tmp_result5 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2); - tmp_result6 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3); - tmp_result7 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3); + tmp_result0 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7); + tmp_result1 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7); + tmp_result2 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6); + tmp_result3 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6); + tmp_result4 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5); + tmp_result5 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5); + tmp_result6 = SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4); + tmp_result7 = SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3846,12 +4050,12 @@ SEM_FN_NAME (sh64_media,mshflol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_left)), 0); - tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_right)), 0); + tmp_result0 = SUBWORDDISI (GET_H_GR (FLD (f_left)), 1); + tmp_result1 = SUBWORDDISI (GET_H_GR (FLD (f_right)), 1); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3875,14 +4079,14 @@ SEM_FN_NAME (sh64_media,mshflow) (SIM_CPU *current_cpu, SEM_ARG sem_arg) HI tmp_result2; HI tmp_result1; HI tmp_result0; - tmp_result0 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 0); - tmp_result1 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 0); - tmp_result2 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 1); - tmp_result3 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 1); + tmp_result0 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 3); + tmp_result1 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 3); + tmp_result2 = SUBWORDDIHI (GET_H_GR (FLD (f_left)), 2); + tmp_result3 = SUBWORDDIHI (GET_H_GR (FLD (f_right)), 2); { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3909,7 +4113,7 @@ SEM_FN_NAME (sh64_media,mshlldl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3940,7 +4144,7 @@ SEM_FN_NAME (sh64_media,mshlldw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3967,7 +4171,7 @@ SEM_FN_NAME (sh64_media,mshlrdl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -3998,7 +4202,7 @@ SEM_FN_NAME (sh64_media,mshlrdw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4025,7 +4229,7 @@ SEM_FN_NAME (sh64_media,msubl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4056,7 +4260,7 @@ SEM_FN_NAME (sh64_media,msubw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (ZEXTHIDI (tmp_result3), 48), ORDI (SLLDI (ZEXTHIDI (tmp_result2), 32), ORDI (SLLDI (ZEXTHIDI (tmp_result1), 16), ZEXTHIDI (tmp_result0)))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4078,12 +4282,12 @@ SEM_FN_NAME (sh64_media,msubsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { SI tmp_result1; SI tmp_result0; - tmp_result0 = ((LTSI (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)), SLLSI (1, SUBSI (32, 1)))) ? (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); - tmp_result1 = ((LTSI (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)), NEGSI (SLLSI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTSI (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)), SLLSI (1, SUBSI (32, 1)))) ? (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0), SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result0 = ((LTDI (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, SUBSI (32, 1)))) ? (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1)))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); + tmp_result1 = ((LTDI (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))), NEGDI (SLLDI (1, SUBSI (32, 1))))) ? (NEGSI (SLLSI (1, SUBSI (32, 1)))) : (((LTDI (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, SUBSI (32, 1)))) ? (SUBDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 0)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 0)))) : (SUBSI (SLLSI (1, SUBSI (32, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTSIDI (tmp_result1), 32), ZEXTSIDI (tmp_result0)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4111,18 +4315,18 @@ SEM_FN_NAME (sh64_media,msubsub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result1 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result2 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result3 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result4 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result5 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result6 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))) : (SUBQI (SLLQI (1, 8), 1))))); - tmp_result7 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), 0)) ? (0) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), SLLQI (1, 8))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result0 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result1 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result2 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result3 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result4 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result5 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result6 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)))) : (SUBQI (SLLQI (1, 8), 1))))); + tmp_result7 = ((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), MAKEDI (0, 0))) ? (0) : (((LTDI (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, 8))) ? (SUBDI (ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), ZEXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)))) : (SUBQI (SLLQI (1, 8), 1))))); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4150,18 +4354,18 @@ SEM_FN_NAME (sh64_media,msubsw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) QI tmp_result2; QI tmp_result1; QI tmp_result0; - tmp_result0 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result1 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result2 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result3 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result4 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result5 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result6 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); - tmp_result7 = ((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), NEGHI (SLLHI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTQI (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)), SLLHI (1, SUBSI (16, 1)))) ? (SUBQI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0), SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result0 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 7)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 7)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result1 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 6)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 6)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result2 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 5)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 5)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result3 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 4)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 4)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result4 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 3)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 3)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result5 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 2)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 2)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result6 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 1)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 1)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); + tmp_result7 = ((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), NEGDI (SLLDI (1, SUBSI (16, 1))))) ? (NEGHI (SLLHI (1, SUBSI (16, 1)))) : (((LTDI (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0))), SLLDI (1, SUBSI (16, 1)))) ? (SUBDI (EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_left)), 0)), EXTQIDI (SUBWORDDIQI (GET_H_GR (FLD (f_right)), 0)))) : (SUBHI (SLLHI (1, SUBSI (16, 1)), 1))))); { DI opval = ORDI (SLLDI (ZEXTQIDI (tmp_result7), 56), ORDI (SLLDI (ZEXTQIDI (tmp_result6), 48), ORDI (SLLDI (ZEXTQIDI (tmp_result5), 40), ORDI (SLLDI (ZEXTQIDI (tmp_result4), 32), ORDI (SLLDI (ZEXTQIDI (tmp_result3), 24), ORDI (SLLDI (ZEXTQIDI (tmp_result2), 16), ORDI (SLLDI (ZEXTQIDI (tmp_result1), 8), ZEXTQIDI (tmp_result0)))))))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -4183,7 +4387,7 @@ SEM_FN_NAME (sh64_media,mulsl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = MULDI (EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), EXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4204,7 +4408,7 @@ SEM_FN_NAME (sh64_media,mulul) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = MULDI (ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1)), ZEXTSIDI (SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4242,7 +4446,7 @@ SEM_FN_NAME (sh64_media,nsb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = sh64_nsb (current_cpu, GET_H_GR (FLD (f_left))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4314,7 +4518,7 @@ SEM_FN_NAME (sh64_media,or) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4335,7 +4539,7 @@ SEM_FN_NAME (sh64_media,ori) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_imm10))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4373,7 +4577,7 @@ SEM_FN_NAME (sh64_media,pta) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDSI (FLD (f_disp16), 1); CPU (h_tr[FLD (f_tra)]) = opval; - TRACE_RESULT (current_cpu, abuf, "tra", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "tr", 'D', opval); } return vpc; @@ -4394,7 +4598,7 @@ SEM_FN_NAME (sh64_media,ptabs) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = GET_H_GR (FLD (f_right)); CPU (h_tr[FLD (f_tra)]) = opval; - TRACE_RESULT (current_cpu, abuf, "tra", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "tr", 'D', opval); } return vpc; @@ -4415,7 +4619,7 @@ SEM_FN_NAME (sh64_media,ptb) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = FLD (f_disp16); CPU (h_tr[FLD (f_tra)]) = opval; - TRACE_RESULT (current_cpu, abuf, "tra", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "tr", 'D', opval); } return vpc; @@ -4436,7 +4640,7 @@ SEM_FN_NAME (sh64_media,ptrel) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ADDDI (pc, GET_H_GR (FLD (f_right))); CPU (h_tr[FLD (f_tra)]) = opval; - TRACE_RESULT (current_cpu, abuf, "tra", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "tr", 'D', opval); } return vpc; @@ -4474,7 +4678,7 @@ SEM_FN_NAME (sh64_media,putcon) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = GET_H_GR (FLD (f_left)); SET_H_CR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "crj", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "cr", 'D', opval); } return vpc; @@ -4512,7 +4716,7 @@ SEM_FN_NAME (sh64_media,shard) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SRADI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4533,7 +4737,7 @@ SEM_FN_NAME (sh64_media,shardl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SRASI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4554,7 +4758,7 @@ SEM_FN_NAME (sh64_media,shari) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SRADI (GET_H_GR (FLD (f_left)), FLD (f_uimm6)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4575,7 +4779,7 @@ SEM_FN_NAME (sh64_media,sharil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SRASI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDSI (FLD (f_uimm6), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4596,7 +4800,7 @@ SEM_FN_NAME (sh64_media,shlld) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SLLDI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4617,7 +4821,7 @@ SEM_FN_NAME (sh64_media,shlldl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4638,7 +4842,7 @@ SEM_FN_NAME (sh64_media,shlli) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SLLDI (GET_H_GR (FLD (f_left)), FLD (f_uimm6)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4659,7 +4863,7 @@ SEM_FN_NAME (sh64_media,shllil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SLLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDSI (FLD (f_uimm6), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4680,7 +4884,7 @@ SEM_FN_NAME (sh64_media,shlrd) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SRLDI (GET_H_GR (FLD (f_left)), ANDDI (GET_H_GR (FLD (f_right)), 63)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4701,7 +4905,7 @@ SEM_FN_NAME (sh64_media,shlrdl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SRLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDDI (GET_H_GR (FLD (f_right)), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4722,7 +4926,7 @@ SEM_FN_NAME (sh64_media,shlri) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SRLDI (GET_H_GR (FLD (f_left)), FLD (f_uimm6)); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4743,7 +4947,7 @@ SEM_FN_NAME (sh64_media,shlril) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SRLSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), ANDSI (FLD (f_uimm6), 63))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4764,7 +4968,7 @@ SEM_FN_NAME (sh64_media,shori) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = ORDI (SLLDI (GET_H_GR (FLD (f_dest)), 16), ZEXTSIDI (FLD (f_uimm16))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -4877,7 +5081,7 @@ SEM_FN_NAME (sh64_media,stw) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,sthil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.sfmt_sthil.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; @@ -4889,58 +5093,66 @@ SEM_FN_NAME (sh64_media,sthil) (SIM_CPU *current_cpu, SEM_ARG sem_arg) DI tmp_val; tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); tmp_bytecount = ADDDI (ANDDI (tmp_addr, 3), 1); +if (ANDQI (tmp_bytecount, 4)) { + { + SI opval = GET_H_GR (FLD (f_dest)); + SETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -4), opval); + written |= (1 << 5); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } +} else { if (GET_H_ENDIAN ()) { +{ tmp_val = GET_H_GR (FLD (f_dest)); -} else { - tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (32, MULSI (8, tmp_bytecount))); -} - tmp_addr = ADDDI (SUBDI (tmp_addr, tmp_bytecount), 1); -if (GTQI (tmp_bytecount, 3)) { +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 6); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); } } -if (GTQI (tmp_bytecount, 2)) { +if (ANDQI (tmp_bytecount, 2)) { { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); + HI opval = ANDHI (tmp_val, 65535); + SETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4), opval); written |= (1 << 4); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 16); +} } } -if (GTQI (tmp_bytecount, 1)) { +} else { +{ + tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (32, MULSI (8, tmp_bytecount))); +if (ANDQI (tmp_bytecount, 2)) { { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); + HI opval = ANDHI (tmp_val, 65535); + SETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4), opval); written |= (1 << 4); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 16); } } -if (GTQI (tmp_bytecount, 0)) { +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 6); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); +} +} +} } } } @@ -4955,7 +5167,7 @@ if (GTQI (tmp_bytecount, 0)) { static SEM_PC SEM_FN_NAME (sh64_media,sthiq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.sfmt_sthil.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; @@ -4967,128 +5179,179 @@ SEM_FN_NAME (sh64_media,sthiq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) DI tmp_val; tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); tmp_bytecount = ADDDI (ANDDI (tmp_addr, 7), 1); +if (ANDQI (tmp_bytecount, 8)) { + { + DI opval = GET_H_GR (FLD (f_dest)); + SETMEMDI (current_cpu, pc, ANDDI (tmp_addr, -8), opval); + written |= (1 << 4); + TRACE_RESULT (current_cpu, abuf, "memory", 'D', opval); + } +} else { if (GET_H_ENDIAN ()) { +{ tmp_val = GET_H_GR (FLD (f_dest)); -} else { - tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (64, MULSI (8, tmp_bytecount))); -} - tmp_addr = ADDDI (SUBDI (tmp_addr, tmp_bytecount), 1); -if (GTQI (tmp_bytecount, 7)) { +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 7); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); } } -if (GTQI (tmp_bytecount, 6)) { +if (ANDQI (tmp_bytecount, 2)) { { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + HI opval = ANDHI (tmp_val, 65535); + SETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4), opval); + written |= (1 << 5); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 16); } } -if (GTQI (tmp_bytecount, 5)) { +if (ANDQI (tmp_bytecount, 4)) { { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + SI opval = ANDSI (tmp_val, 0xffffffff); + SETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -8), opval); + written |= (1 << 6); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 32); +} +} +} +} else { +{ + tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (64, MULSI (8, tmp_bytecount))); +if (ANDQI (tmp_bytecount, 4)) { +{ + { + SI opval = ANDSI (tmp_val, 0xffffffff); + SETMEMSI (current_cpu, pc, ANDDI (tmp_addr, -8), opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 32); +} +} +if (ANDQI (tmp_bytecount, 2)) { +{ + { + HI opval = ANDHI (tmp_val, 65535); + SETMEMHI (current_cpu, pc, ANDDI (tmp_addr, -4), opval); + written |= (1 << 5); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 16); } } -if (GTQI (tmp_bytecount, 4)) { +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 7); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); } } -if (GTQI (tmp_bytecount, 3)) { +} +} +} +} + + abuf->written = written; + return vpc; +#undef FLD +} + +/* stlol: stlo.l $rm, $disp6, $rd */ + +static SEM_PC +SEM_FN_NAME (sh64_media,stlol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { +#define FLD(f) abuf->fields.sfmt_ldhil.f + ARGBUF *abuf = SEM_ARGBUF (sem_arg); + int UNUSED written = 0; + IADDR UNUSED pc = abuf->addr; + SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); + +{ + DI tmp_addr; + QI tmp_bytecount; + DI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = SUBSI (4, ANDDI (tmp_addr, 3)); +if (ANDQI (tmp_bytecount, 4)) { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); + USI opval = GET_H_GR (FLD (f_dest)); + SETMEMUSI (current_cpu, pc, tmp_addr, opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ + tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (32, MULSI (8, tmp_bytecount))); +if (ANDQI (tmp_bytecount, 2)) { +{ + { + UHI opval = ANDHI (tmp_val, 65535); + SETMEMUHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2), opval); written |= (1 << 4); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 16); } } -if (GTQI (tmp_bytecount, 2)) { +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 5); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); } } -if (GTQI (tmp_bytecount, 1)) { +} +} else { +{ + tmp_val = GET_H_GR (FLD (f_dest)); +if (ANDQI (tmp_bytecount, 1)) { { { UQI opval = ANDQI (tmp_val, 255); SETMEMUQI (current_cpu, pc, tmp_addr, opval); - written |= (1 << 4); + written |= (1 << 5); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); } } -if (GTQI (tmp_bytecount, 0)) { +if (ANDQI (tmp_bytecount, 2)) { { { - UQI opval = ANDQI (tmp_val, 255); - SETMEMUQI (current_cpu, pc, tmp_addr, opval); + UHI opval = ANDHI (tmp_val, 65535); + SETMEMUHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2), opval); written |= (1 << 4); TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); } - tmp_val = SRLDI (tmp_val, 8); - tmp_addr = ADDDI (tmp_addr, 1); + tmp_val = SRLDI (tmp_val, 16); +} +} } } } - - abuf->written = written; - return vpc; -#undef FLD } -/* stlol: stlo.l $rm, $disp6, $rd */ - -static SEM_PC -SEM_FN_NAME (sh64_media,stlol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) -{ -#define FLD(f) abuf->fields.fmt_empty.f - ARGBUF *abuf = SEM_ARGBUF (sem_arg); - int UNUSED written = 0; - IADDR UNUSED pc = abuf->addr; - SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); - -((void) 0); /*nop*/ - + abuf->written = written; return vpc; #undef FLD } @@ -5098,14 +5361,105 @@ SEM_FN_NAME (sh64_media,stlol) (SIM_CPU *current_cpu, SEM_ARG sem_arg) static SEM_PC SEM_FN_NAME (sh64_media,stloq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { -#define FLD(f) abuf->fields.fmt_empty.f +#define FLD(f) abuf->fields.sfmt_ldhil.f ARGBUF *abuf = SEM_ARGBUF (sem_arg); int UNUSED written = 0; IADDR UNUSED pc = abuf->addr; SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4); -((void) 0); /*nop*/ +{ + DI tmp_addr; + QI tmp_bytecount; + DI tmp_val; + tmp_addr = ADDDI (GET_H_GR (FLD (f_left)), FLD (f_disp6)); + tmp_bytecount = SUBSI (8, ANDDI (tmp_addr, 7)); +if (ANDQI (tmp_bytecount, 8)) { + { + UDI opval = GET_H_GR (FLD (f_dest)); + SETMEMUDI (current_cpu, pc, tmp_addr, opval); + written |= (1 << 4); + TRACE_RESULT (current_cpu, abuf, "memory", 'D', opval); + } +} else { +if (GET_H_ENDIAN ()) { +{ + tmp_val = SRLDI (GET_H_GR (FLD (f_dest)), SUBSI (64, MULSI (8, tmp_bytecount))); +if (ANDQI (tmp_bytecount, 4)) { +{ + { + USI opval = ANDSI (tmp_val, 0xffffffff); + SETMEMUSI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 3), -4), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 32); +} +} +if (ANDQI (tmp_bytecount, 2)) { +{ + { + UHI opval = ANDHI (tmp_val, 65535); + SETMEMUHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2), opval); + written |= (1 << 5); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 16); +} +} +if (ANDQI (tmp_bytecount, 1)) { +{ + { + UQI opval = ANDQI (tmp_val, 255); + SETMEMUQI (current_cpu, pc, tmp_addr, opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 8); +} +} +} +} else { +{ + tmp_val = GET_H_GR (FLD (f_dest)); +if (ANDQI (tmp_bytecount, 1)) { +{ + { + UQI opval = ANDQI (tmp_val, 255); + SETMEMUQI (current_cpu, pc, tmp_addr, opval); + written |= (1 << 6); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 8); +} +} +if (ANDQI (tmp_bytecount, 2)) { +{ + { + UHI opval = ANDHI (tmp_val, 65535); + SETMEMUHI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 1), -2), opval); + written |= (1 << 5); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 16); +} +} +if (ANDQI (tmp_bytecount, 4)) { +{ + { + USI opval = ANDSI (tmp_val, 0xffffffff); + SETMEMUSI (current_cpu, pc, ANDDI (ADDDI (tmp_addr, 3), -4), opval); + written |= (1 << 7); + TRACE_RESULT (current_cpu, abuf, "memory", 'x', opval); + } + tmp_val = SRLDI (tmp_val, 32); +} +} +} +} +} +} + abuf->written = written; return vpc; #undef FLD } @@ -5208,7 +5562,7 @@ SEM_FN_NAME (sh64_media,sub) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = SUBDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -5229,7 +5583,7 @@ SEM_FN_NAME (sh64_media,subl) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = EXTSIDI (SUBSI (SUBWORDDISI (GET_H_GR (FLD (f_left)), 1), SUBWORDDISI (GET_H_GR (FLD (f_right)), 1))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -5260,7 +5614,7 @@ SEM_FN_NAME (sh64_media,swapq) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = tmp_temp; SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } } @@ -5333,7 +5687,7 @@ SEM_FN_NAME (sh64_media,xor) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = XORDI (GET_H_GR (FLD (f_left)), GET_H_GR (FLD (f_right))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; @@ -5354,7 +5708,7 @@ SEM_FN_NAME (sh64_media,xori) (SIM_CPU *current_cpu, SEM_ARG sem_arg) { DI opval = XORDI (GET_H_GR (FLD (f_left)), EXTSIDI (FLD (f_imm6))); SET_H_GR (FLD (f_dest), opval); - TRACE_RESULT (current_cpu, abuf, "rd", 'D', opval); + TRACE_RESULT (current_cpu, abuf, "gr", 'D', opval); } return vpc; |