[PATCH] AARCH64 add GICv3 system registers

Andrew Pinski andrew.pinski@caviumnetworks.com
Wed Sep 25 18:48:00 GMT 2013


Hi,
  This patch adds the GICv3 system registers names to the list of
system register names.  Naveen wrote the patch but I am submitting it.

OK?  Tested for aarch64-linux-gnu with no regressions.

Thanks,
Andrew Pinski

ChangeLog:

AArch64: Add support for GIC ICC_* system registers in gas

2013-09-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* aarch64-opc.c (aarch64_sys_regs): Add support for GIC ICC_*
system registers in gas.

PS I will update the date in the changelog before committing it once approved.
-------------- next part --------------
? .aarch64-opc.c.swp
? b
? opcodes
Index: aarch64-opc.c
===================================================================
RCS file: /cvs/src/src/opcodes/aarch64-opc.c,v
retrieving revision 1.9
diff -u -p -r1.9 aarch64-opc.c
--- aarch64-opc.c	28 Aug 2013 10:25:36 -0000	1.9
+++ aarch64-opc.c	25 Sep 2013 18:47:03 -0000
@@ -2985,6 +2985,70 @@ const struct aarch64_name_value_pair aar
   { "pmevtyper29_el0",   CPENC(3,3,C14,C15,5) },
   { "pmevtyper30_el0",   CPENC(3,3,C14,C15,6) },
   { "pmccfiltr_el0",     CPENC(3,3,C14,C15,7) },
+
+  /* GICv3 system registers */
+  { "icc_iar1_el1",	 CPENC(3,0,C12,C12,0) },
+  { "icc_iar0_el1",	 CPENC(3,0,C12,C8,0) },
+  { "icc_eoir1_el1",	 CPENC(3,0,C12,C12,1) },
+  { "icc_eoir0_el1",	 CPENC(3,0,C12,C8,1) },
+  { "icc_hppir1_el1",	 CPENC(3,0,C12,C12,2) },
+  { "icc_hppir0_el1",	 CPENC(3,0,C12,C8,2) },
+  { "icc_bpr1_el1",	 CPENC(3,0,C12,C12,3) },
+  { "icc_bpr0_el1",	 CPENC(3,0,C12,C8,3) },
+  { "icc_dir_el1",	 CPENC(3,0,C12,C11,1) },
+  { "icc_pmr_el1",	 CPENC(3,0,C4,C6,0) },
+  { "icc_rpr_el1",	 CPENC(3,0,C12,C11,3) },
+  { "icc_ctlr_el1",	 CPENC(3,0,C12,C12,4) },
+  { "icc_ctlr_el3",	 CPENC(3,6,C12,C12,4) },
+  { "icc_sre_el1",	 CPENC(3,0,C12,C12,5) },
+  { "icc_sre_el2",	 CPENC(3,4,C12,C9,5) },
+  { "icc_sre_el3",	 CPENC(3,6,C12,C12,5) },
+  { "icc_igrpen0_el1",	 CPENC(3,0,C12,C12,6) },
+  { "icc_igrpen1_el1",	 CPENC(3,0,C12,C12,7) },
+  { "icc_igrpen1_el3",	 CPENC(3,6,C12,C12,7) },
+  { "icc_seien_el1",	 CPENC(3,0,C12,C13,0) },
+  { "icc_sgi1r_el1",	 CPENC(3,0,C12,C11,5) },
+  { "icc_asgi1r_el1",	 CPENC(3,0,C12,C11,6) },
+  { "icc_sgi0r_el1",	 CPENC(3,0,C12,C11,7) },
+  { "icc_ap0r0_el1",	 CPENC(3,0,C12,C8,4) },
+  { "icc_ap0r1_el1",	 CPENC(3,0,C12,C8,5) },
+  { "icc_ap0r2_el1",	 CPENC(3,0,C12,C8,6) },
+  { "icc_ap0r3_el1",	 CPENC(3,0,C12,C8,7) },
+  { "icc_ap1r0_el1",	 CPENC(3,0,C12,C9,0) },
+  { "icc_ap1r1_el1",	 CPENC(3,0,C12,C9,1) },
+  { "icc_ap1r2_el1",	 CPENC(3,0,C12,C9,2) },
+  { "icc_ap1r3_el1",	 CPENC(3,0,C12,C9,3) },
+  { "ich_ap0r0_el2",	 CPENC(3,4,C12,C8,0) },
+  { "ich_ap0r1_el2",	 CPENC(3,4,C12,C8,1) },
+  { "ich_ap0r2_el2",	 CPENC(3,4,C12,C8,2) },
+  { "ich_ap0r3_el2",	 CPENC(3,4,C12,C8,3) },
+  { "ich_ap1r0_el2",	 CPENC(3,4,C12,C9,0) },
+  { "ich_ap1r1_el2",	 CPENC(3,4,C12,C9,1) },
+  { "ich_ap1r2_el2",	 CPENC(3,4,C12,C9,2) },
+  { "ich_ap1r3_el2",	 CPENC(3,4,C12,C9,3) },
+  { "ich_hcr_el2",	 CPENC(3,4,C12,C11,0) },
+  { "ich_vtr_el2",	 CPENC(3,4,C12,C11,1) },
+  { "ich_misr_el2",	 CPENC(3,4,C12,C11,2) },
+  { "ich_eisr_el2",	 CPENC(3,4,C12,C11,3) },
+  { "ich_elsr_el2",	 CPENC(3,4,C12,C11,5) },
+  { "ich_vmcr_el2",	 CPENC(3,4,C12,C11,7) },
+  { "ich_vseir_el2",	 CPENC(3,4,C12,C9,4) },
+  { "ich_lr0_el2",	 CPENC(3,4,C12,C12,0) },
+  { "ich_lr1_el2",	 CPENC(3,4,C12,C12,1) },
+  { "ich_lr2_el2",	 CPENC(3,4,C12,C12,2) },
+  { "ich_lr3_el2",	 CPENC(3,4,C12,C12,3) },
+  { "ich_lr4_el2",	 CPENC(3,4,C12,C12,4) },
+  { "ich_lr5_el2",	 CPENC(3,4,C12,C12,5) },
+  { "ich_lr6_el2",	 CPENC(3,4,C12,C12,6) },
+  { "ich_lr7_el2",	 CPENC(3,4,C12,C12,7) },
+  { "ich_lr8_el2",	 CPENC(3,4,C12,C13,0) },
+  { "ich_lr9_el2",	 CPENC(3,4,C12,C13,1) },
+  { "ich_lr10_el2",	 CPENC(3,4,C12,C13,2) },
+  { "ich_lr11_el2",	 CPENC(3,4,C12,C13,3) },
+  { "ich_lr12_el2",	 CPENC(3,4,C12,C13,4) },
+  { "ich_lr13_el2",	 CPENC(3,4,C12,C13,5) },
+  { "ich_lr14_el2",	 CPENC(3,4,C12,C13,6) },
+  { "ich_lr15_el2",	 CPENC(3,4,C12,C13,7) },
   { 0,          CPENC(0,0,0,0,0)  },
 };
 


More information about the Binutils mailing list