diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2004-06-15 17:31:36 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2004-06-15 17:31:36 +0000 |
commit | 0d99ffd6d44ac98036b8eaabb0f33507b96963fb (patch) | |
tree | 365a63e9bd3236f47f4eba1ab6facecd286fc6dd /sys | |
parent | c8c1f30cad287f33c34490748cc874ca8ff16c11 (diff) |
grok upcoming VIA C3 Esther montmul, sha1, and sha256 instructions
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arch/i386/i386/db_disasm.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/sys/arch/i386/i386/db_disasm.c b/sys/arch/i386/i386/db_disasm.c index 0b7b83e61bf..0414870f05a 100644 --- a/sys/arch/i386/i386/db_disasm.c +++ b/sys/arch/i386/i386/db_disasm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: db_disasm.c,v 1.10 2004/02/01 19:13:44 deraadt Exp $ */ +/* $OpenBSD: db_disasm.c,v 1.11 2004/06/15 17:31:35 deraadt Exp $ */ /* $NetBSD: db_disasm.c,v 1.11 1996/05/03 19:41:58 christos Exp $ */ /* @@ -140,10 +140,15 @@ char * db_GrpA[] = { }; char * db_GrpB[] = { - "xstore-rng", "xcrypt-ecb", "xcrypt-cbc", "", + "xstore-rng", "xcrypt-ecb", "xcrypt-cbc", "xcrypt-ctr", "xcrypt-cfb", "xcrypt-ofb", "", "" }; +char * db_GrpC[] = { + "montmul", "xsha1", "xsha256", "", + "", "", "", "" +}; + struct inst db_inst_0f0x[] = { /*00*/ { "", TRUE, NONE, op1(Ew), db_Grp6 }, /*01*/ { "", TRUE, NONE, op1(Ew), db_Grp7 }, @@ -251,7 +256,7 @@ struct inst db_inst_0fax[] = { /*a3*/ { "bt", TRUE, LONG, op2(R,E), 0 }, /*a4*/ { "shld", TRUE, LONG, op3(Ib,R,E), 0 }, /*a5*/ { "shld", TRUE, LONG, op3(CL,R,E), 0 }, -/*a6*/ { "", FALSE, NONE, 0, 0 }, +/*a6*/ { "", TRUE, NONE, 0, db_GrpC }, /*a7*/ { "", TRUE, NONE, 0, db_GrpB }, /*a8*/ { "push", FALSE, NONE, op1(Si), 0 }, @@ -1179,7 +1184,8 @@ db_disasm(loc, altfmt) if (ip->i_extra == db_Grp1 || ip->i_extra == db_Grp2 || ip->i_extra == db_Grp6 || ip->i_extra == db_Grp7 || ip->i_extra == db_Grp8 || ip->i_extra == db_Grp9 || - ip->i_extra == db_GrpA || ip->i_extra == db_GrpB) { + ip->i_extra == db_GrpA || ip->i_extra == db_GrpB || + ip->i_extra == db_GrpC) { i_name = ((char **)ip->i_extra)[f_reg(regmodrm)]; } else if (ip->i_extra == db_Grp3) { ip = (struct inst *)ip->i_extra; |