aboutsummaryrefslogtreecommitdiff
path: root/opcodes/frv-ibld.c
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/frv-ibld.c')
-rw-r--r--opcodes/frv-ibld.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/opcodes/frv-ibld.c b/opcodes/frv-ibld.c
index 03686f8..81aef09 100644
--- a/opcodes/frv-ibld.c
+++ b/opcodes/frv-ibld.c
@@ -731,6 +731,9 @@ frv_cgen_insert_operand (cd, opindex, fields, buffer, pc)
case FRV_OPERAND_AE :
errmsg = insert_normal (cd, fields->f_ae, 0, 0, 25, 1, 32, total_length, buffer);
break;
+ case FRV_OPERAND_CALLANN :
+ errmsg = insert_normal (cd, fields->f_reloc_ann, 0, 0, 0, 0, 32, total_length, buffer);
+ break;
case FRV_OPERAND_CCOND :
errmsg = insert_normal (cd, fields->f_ccond, 0, 0, 12, 1, 32, total_length, buffer);
break;
@@ -776,6 +779,12 @@ frv_cgen_insert_operand (cd, opindex, fields, buffer, pc)
break;
}
break;
+ case FRV_OPERAND_LDANN :
+ errmsg = insert_normal (cd, fields->f_reloc_ann, 0, 0, 0, 0, 32, total_length, buffer);
+ break;
+ case FRV_OPERAND_LDDANN :
+ errmsg = insert_normal (cd, fields->f_reloc_ann, 0, 0, 0, 0, 32, total_length, buffer);
+ break;
case FRV_OPERAND_LOCK :
errmsg = insert_normal (cd, fields->f_lock, 0, 0, 25, 1, 32, total_length, buffer);
break;
@@ -1049,6 +1058,9 @@ frv_cgen_extract_operand (cd, opindex, ex_info, insn_value, fields, pc)
case FRV_OPERAND_AE :
length = extract_normal (cd, ex_info, insn_value, 0, 0, 25, 1, 32, total_length, pc, & fields->f_ae);
break;
+ case FRV_OPERAND_CALLANN :
+ length = extract_normal (cd, ex_info, insn_value, 0, 0, 0, 0, 32, total_length, pc, & fields->f_reloc_ann);
+ break;
case FRV_OPERAND_CCOND :
length = extract_normal (cd, ex_info, insn_value, 0, 0, 12, 1, 32, total_length, pc, & fields->f_ccond);
break;
@@ -1092,6 +1104,12 @@ frv_cgen_extract_operand (cd, opindex, ex_info, insn_value, fields, pc)
}
}
break;
+ case FRV_OPERAND_LDANN :
+ length = extract_normal (cd, ex_info, insn_value, 0, 0, 0, 0, 32, total_length, pc, & fields->f_reloc_ann);
+ break;
+ case FRV_OPERAND_LDDANN :
+ length = extract_normal (cd, ex_info, insn_value, 0, 0, 0, 0, 32, total_length, pc, & fields->f_reloc_ann);
+ break;
case FRV_OPERAND_LOCK :
length = extract_normal (cd, ex_info, insn_value, 0, 0, 25, 1, 32, total_length, pc, & fields->f_lock);
break;
@@ -1350,6 +1368,9 @@ frv_cgen_get_int_operand (cd, opindex, fields)
case FRV_OPERAND_AE :
value = fields->f_ae;
break;
+ case FRV_OPERAND_CALLANN :
+ value = fields->f_reloc_ann;
+ break;
case FRV_OPERAND_CCOND :
value = fields->f_ccond;
break;
@@ -1380,6 +1401,12 @@ frv_cgen_get_int_operand (cd, opindex, fields)
case FRV_OPERAND_LABEL24 :
value = fields->f_label24;
break;
+ case FRV_OPERAND_LDANN :
+ value = fields->f_reloc_ann;
+ break;
+ case FRV_OPERAND_LDDANN :
+ value = fields->f_reloc_ann;
+ break;
case FRV_OPERAND_LOCK :
value = fields->f_lock;
break;
@@ -1602,6 +1629,9 @@ frv_cgen_get_vma_operand (cd, opindex, fields)
case FRV_OPERAND_AE :
value = fields->f_ae;
break;
+ case FRV_OPERAND_CALLANN :
+ value = fields->f_reloc_ann;
+ break;
case FRV_OPERAND_CCOND :
value = fields->f_ccond;
break;
@@ -1632,6 +1662,12 @@ frv_cgen_get_vma_operand (cd, opindex, fields)
case FRV_OPERAND_LABEL24 :
value = fields->f_label24;
break;
+ case FRV_OPERAND_LDANN :
+ value = fields->f_reloc_ann;
+ break;
+ case FRV_OPERAND_LDDANN :
+ value = fields->f_reloc_ann;
+ break;
case FRV_OPERAND_LOCK :
value = fields->f_lock;
break;
@@ -1863,6 +1899,9 @@ frv_cgen_set_int_operand (cd, opindex, fields, value)
case FRV_OPERAND_AE :
fields->f_ae = value;
break;
+ case FRV_OPERAND_CALLANN :
+ fields->f_reloc_ann = value;
+ break;
case FRV_OPERAND_CCOND :
fields->f_ccond = value;
break;
@@ -1893,6 +1932,12 @@ frv_cgen_set_int_operand (cd, opindex, fields, value)
case FRV_OPERAND_LABEL24 :
fields->f_label24 = value;
break;
+ case FRV_OPERAND_LDANN :
+ fields->f_reloc_ann = value;
+ break;
+ case FRV_OPERAND_LDDANN :
+ fields->f_reloc_ann = value;
+ break;
case FRV_OPERAND_LOCK :
fields->f_lock = value;
break;
@@ -2112,6 +2157,9 @@ frv_cgen_set_vma_operand (cd, opindex, fields, value)
case FRV_OPERAND_AE :
fields->f_ae = value;
break;
+ case FRV_OPERAND_CALLANN :
+ fields->f_reloc_ann = value;
+ break;
case FRV_OPERAND_CCOND :
fields->f_ccond = value;
break;
@@ -2142,6 +2190,12 @@ frv_cgen_set_vma_operand (cd, opindex, fields, value)
case FRV_OPERAND_LABEL24 :
fields->f_label24 = value;
break;
+ case FRV_OPERAND_LDANN :
+ fields->f_reloc_ann = value;
+ break;
+ case FRV_OPERAND_LDDANN :
+ fields->f_reloc_ann = value;
+ break;
case FRV_OPERAND_LOCK :
fields->f_lock = value;
break;