+ CGEN_TRACE_RESULT (current_cpu, abuf, "grc", 'x', opval);
+ }
+
+#undef FLD
+}
+ NEXT (vpc);
+
+ CASE (sem, INSN_MOVUAL_COMPACT) : /* movua.l @$rn, r0 */
+{
+ SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);
+ ARGBUF *abuf = SEM_ARGBUF (sem_arg);
+#define FLD(f) abuf->fields.sfmt_movw10_compact.f
+ int UNUSED written = 0;
+ IADDR UNUSED pc = abuf->addr;
+ vpc = SEM_NEXT_VPC (sem_arg, pc, 2);
+
+ {
+ SI opval = sh64_movua (current_cpu, pc, GET_H_GRC (FLD (f_rn)));
+ SET_H_GRC (((UINT) 0), opval);
+ CGEN_TRACE_RESULT (current_cpu, abuf, "grc", 'x', opval);
+ }
+
+#undef FLD
+}
+ NEXT (vpc);
+
+ CASE (sem, INSN_MOVUAL2_COMPACT) : /* movua.l @$rn+, r0 */
+{
+ SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);
+ ARGBUF *abuf = SEM_ARGBUF (sem_arg);
+#define FLD(f) abuf->fields.sfmt_movw10_compact.f
+ int UNUSED written = 0;
+ IADDR UNUSED pc = abuf->addr;
+ vpc = SEM_NEXT_VPC (sem_arg, pc, 2);
+
+{
+ {
+ SI opval = sh64_movua (current_cpu, pc, GET_H_GRC (FLD (f_rn)));
+ SET_H_GRC (((UINT) 0), opval);
+ CGEN_TRACE_RESULT (current_cpu, abuf, "grc", 'x', opval);
+ }
+ {
+ SI opval = ADDSI (GET_H_GRC (FLD (f_rn)), 4);
+ SET_H_GRC (FLD (f_rn), opval);
+ CGEN_TRACE_RESULT (current_cpu, abuf, "grc", 'x', opval);