* expr.c (operand <case '$'>): Use DOLLAR_AMBIGU rather than flag_mri_m68k
[deliverable/binutils-gdb.git] / opcodes / m32c-ibld.c
index bbf9a870352fb149123f4751f93ee319aee42f33..16f0048e3b08718edeb6b5246d096491fd06e49c 100644 (file)
@@ -562,8 +562,6 @@ m32c_cgen_insert_operand (CGEN_CPU_DESC cd,
       break;
     case M32C_OPERAND_A1 :
       break;
-    case M32C_OPERAND_A1A0 :
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       errmsg = insert_normal (cd, fields->f_4_1, 0, 0, 4, 1, 32, total_length, buffer);
       break;
@@ -1029,6 +1027,13 @@ m32c_cgen_insert_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_DSP_48_U8 :
       errmsg = insert_normal (cd, fields->f_dsp_48_u8, 0, 32, 16, 8, 32, total_length, buffer);
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      {
+        long value = fields->f_dsp_8_s24;
+        value = ((((((unsigned int) (value) >> (16))) | (((value) & (65280))))) | (((EXTQISI (TRUNCSIQI (((value) & (255))))) << (16))));
+        errmsg = insert_normal (cd, value, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 24, 32, total_length, buffer);
+      }
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       errmsg = insert_normal (cd, fields->f_dsp_8_s8, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 8, 32, total_length, buffer);
       break;
@@ -1169,6 +1174,9 @@ m32c_cgen_insert_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_IMM_12_S4 :
       errmsg = insert_normal (cd, fields->f_imm_12_s4, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, buffer);
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      errmsg = insert_normal (cd, fields->f_imm_12_s4, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, buffer);
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       errmsg = insert_normal (cd, fields->f_imm_13_u3, 0, 0, 13, 3, 32, total_length, buffer);
       break;
@@ -1356,6 +1364,9 @@ m32c_cgen_insert_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_IMM_8_S4 :
       errmsg = insert_normal (cd, fields->f_imm_8_s4, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 4, 32, total_length, buffer);
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      errmsg = insert_normal (cd, fields->f_imm_8_s4, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 4, 32, total_length, buffer);
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       errmsg = insert_normal (cd, fields->f_imm_12_s4, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, buffer);
       break;
@@ -1711,8 +1722,6 @@ m32c_cgen_extract_operand (CGEN_CPU_DESC cd,
       break;
     case M32C_OPERAND_A1 :
       break;
-    case M32C_OPERAND_A1A0 :
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       length = extract_normal (cd, ex_info, insn_value, 0, 0, 4, 1, 32, total_length, pc, & fields->f_4_1);
       break;
@@ -2139,6 +2148,14 @@ m32c_cgen_extract_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_DSP_48_U8 :
       length = extract_normal (cd, ex_info, insn_value, 0, 32, 16, 8, 32, total_length, pc, & fields->f_dsp_48_u8);
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      {
+        long value;
+        length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 24, 32, total_length, pc, & value);
+        value = ((((((unsigned int) (value) >> (16))) | (((value) & (65280))))) | (((EXTQISI (TRUNCSIQI (((value) & (255))))) << (16))));
+        fields->f_dsp_8_s24 = value;
+      }
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 8, 32, total_length, pc, & fields->f_dsp_8_s8);
       break;
@@ -2287,6 +2304,9 @@ m32c_cgen_extract_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_IMM_12_S4 :
       length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, pc, & fields->f_imm_12_s4);
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, pc, & fields->f_imm_12_s4);
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       length = extract_normal (cd, ex_info, insn_value, 0, 0, 13, 3, 32, total_length, pc, & fields->f_imm_13_u3);
       break;
@@ -2469,6 +2489,9 @@ m32c_cgen_extract_operand (CGEN_CPU_DESC cd,
     case M32C_OPERAND_IMM_8_S4 :
       length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 4, 32, total_length, pc, & fields->f_imm_8_s4);
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 8, 4, 32, total_length, pc, & fields->f_imm_8_s4);
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED), 0, 12, 4, 32, total_length, pc, & fields->f_imm_12_s4);
       break;
@@ -2822,9 +2845,6 @@ m32c_cgen_get_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_A1 :
       value = 0;
       break;
-    case M32C_OPERAND_A1A0 :
-      value = 0;
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       value = fields->f_4_1;
       break;
@@ -2984,6 +3004,9 @@ m32c_cgen_get_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_DSP_48_U8 :
       value = fields->f_dsp_48_u8;
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      value = fields->f_dsp_8_s24;
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       value = fields->f_dsp_8_s8;
       break;
@@ -3095,6 +3118,9 @@ m32c_cgen_get_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_12_S4 :
       value = fields->f_imm_12_s4;
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      value = fields->f_imm_12_s4;
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       value = fields->f_imm_13_u3;
       break;
@@ -3164,6 +3190,9 @@ m32c_cgen_get_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_8_S4 :
       value = fields->f_imm_8_s4;
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      value = fields->f_imm_8_s4;
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       value = fields->f_imm_12_s4;
       break;
@@ -3406,9 +3435,6 @@ m32c_cgen_get_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_A1 :
       value = 0;
       break;
-    case M32C_OPERAND_A1A0 :
-      value = 0;
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       value = fields->f_4_1;
       break;
@@ -3568,6 +3594,9 @@ m32c_cgen_get_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_DSP_48_U8 :
       value = fields->f_dsp_48_u8;
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      value = fields->f_dsp_8_s24;
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       value = fields->f_dsp_8_s8;
       break;
@@ -3679,6 +3708,9 @@ m32c_cgen_get_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_12_S4 :
       value = fields->f_imm_12_s4;
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      value = fields->f_imm_12_s4;
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       value = fields->f_imm_13_u3;
       break;
@@ -3748,6 +3780,9 @@ m32c_cgen_get_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_8_S4 :
       value = fields->f_imm_8_s4;
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      value = fields->f_imm_8_s4;
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       value = fields->f_imm_12_s4;
       break;
@@ -3995,8 +4030,6 @@ m32c_cgen_set_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
       break;
     case M32C_OPERAND_A1 :
       break;
-    case M32C_OPERAND_A1A0 :
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       fields->f_4_1 = value;
       break;
@@ -4156,6 +4189,9 @@ m32c_cgen_set_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_DSP_48_U8 :
       fields->f_dsp_48_u8 = value;
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      fields->f_dsp_8_s24 = value;
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       fields->f_dsp_8_s8 = value;
       break;
@@ -4264,6 +4300,9 @@ m32c_cgen_set_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_12_S4 :
       fields->f_imm_12_s4 = value;
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      fields->f_imm_12_s4 = value;
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       fields->f_imm_13_u3 = value;
       break;
@@ -4333,6 +4372,9 @@ m32c_cgen_set_int_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_8_S4 :
       fields->f_imm_8_s4 = value;
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      fields->f_imm_8_s4 = value;
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       fields->f_imm_12_s4 = value;
       break;
@@ -4556,8 +4598,6 @@ m32c_cgen_set_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
       break;
     case M32C_OPERAND_A1 :
       break;
-    case M32C_OPERAND_A1A0 :
-      break;
     case M32C_OPERAND_AN16_PUSH_S :
       fields->f_4_1 = value;
       break;
@@ -4717,6 +4757,9 @@ m32c_cgen_set_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_DSP_48_U8 :
       fields->f_dsp_48_u8 = value;
       break;
+    case M32C_OPERAND_DSP_8_S24 :
+      fields->f_dsp_8_s24 = value;
+      break;
     case M32C_OPERAND_DSP_8_S8 :
       fields->f_dsp_8_s8 = value;
       break;
@@ -4825,6 +4868,9 @@ m32c_cgen_set_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_12_S4 :
       fields->f_imm_12_s4 = value;
       break;
+    case M32C_OPERAND_IMM_12_S4N :
+      fields->f_imm_12_s4 = value;
+      break;
     case M32C_OPERAND_IMM_13_U3 :
       fields->f_imm_13_u3 = value;
       break;
@@ -4894,6 +4940,9 @@ m32c_cgen_set_vma_operand (CGEN_CPU_DESC cd ATTRIBUTE_UNUSED,
     case M32C_OPERAND_IMM_8_S4 :
       fields->f_imm_8_s4 = value;
       break;
+    case M32C_OPERAND_IMM_8_S4N :
+      fields->f_imm_8_s4 = value;
+      break;
     case M32C_OPERAND_IMM_SH_12_S4 :
       fields->f_imm_12_s4 = value;
       break;
This page took 0.025731 seconds and 4 git commands to generate.