Date: Tue, 17 Jul 2012 09:26:20 GMT From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 214504 for review Message-ID: <201207170926.q6H9QKoQ039917@skunkworks.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@214504?ac=10 Change 214504 by rwatson@rwatson_svr_ctsrd_mipsbuild on 2012/07/17 09:26:10 Merge CHERI assembler enhancements from CTSRD-CHERI/binutils: commit 7248f6e0b1e1262bebc404c50ac618e6f7d9c60e Author: Steven Murdoch <Steven.Murdoch@cl.cam.ac.uk> Date: Thu Jul 5 14:41:05 2012 +0100 Use indexed notation when instructions have an offset value or register cscr, clcr cl[bhwd] cl[bhwd]r cs[bhwd] cs[bhwd]r cjr cjalr Affected files ... .. //depot/projects/ctsrd/cheribsd/src/contrib/binutils/gas/config/tc-mips.c#3 edit .. //depot/projects/ctsrd/cheribsd/src/contrib/binutils/opcodes/mips-opc.c#5 edit Differences ... ==== //depot/projects/ctsrd/cheribsd/src/contrib/binutils/gas/config/tc-mips.c#3 (text+ko) ==== @@ -8796,6 +8796,8 @@ s += strspn (s, " \t"); is_mdmx = 0; + /* Switch on first character of operand (+ options are handled by + a nested case statement, inside this switch) */ switch (*args) { case '\0': /* end of args */ @@ -9055,7 +9057,8 @@ /* This is dependent on the next operand specifier is a base register specification. */ assert (args[1] == 'b' || args[1] == '5' - || args[1] == '-' || args[1] == '4'); + || args[1] == '-' || args[1] == '4' + || (args[1] == '+' && args[2] == 'b')); if (*s == '\0') return; ==== //depot/projects/ctsrd/cheribsd/src/contrib/binutils/opcodes/mips-opc.c#5 (text+ko) ==== @@ -200,26 +200,26 @@ {"cdeclen", "+w,+b,m", 0x48800000, 0xffe0003f, 0, 0, I1 }, /* DEPRECATED */ {"cdecleng","+w,+b,m", 0x48800000, 0xffe0003f, 0, 0, I1 }, /* DEPRECATED */ {"candperm","+w,+b,m", 0x48800006, 0xffe0003f, 0, 0, I1 }, -{"cscr", "+w,+b,m", 0x49200000, 0xffe0003f, 0, 0, I1 }, -{"clcr", "+w,+b,m", 0x49400000, 0xffe0003f, 0, 0, I1 }, -{"clb", "t,+b,+o", 0x4a000000, 0xffe00000, 0, 0, I1 }, -{"clh", "t,+b,+o", 0x4a200000, 0xffe00000, 0, 0, I1 }, -{"clw", "t,+b,+o", 0x4a400000, 0xffe00000, 0, 0, I1 }, -{"cld", "t,+b,+o", 0x4a600000, 0xffe00000, 0, 0, I1 }, -{"clbr", "t,+b,m", 0x4a800000, 0xffe0003f, 0, 0, I1 }, -{"clhr", "t,+b,m", 0x4aa00000, 0xffe0003f, 0, 0, I1 }, -{"clwr", "t,+b,m", 0x4ac00000, 0xffe0003f, 0, 0, I1 }, -{"cldr", "t,+b,m", 0x4ae00000, 0xffe0003f, 0, 0, I1 }, -{"csb", "t,+b,+o", 0x4b000000, 0xffe00000, 0, 0, I1 }, -{"csh", "t,+b,+o", 0x4b200000, 0xffe00000, 0, 0, I1 }, -{"csw", "t,+b,+o", 0x4b400000, 0xffe00000, 0, 0, I1 }, -{"csd", "t,+b,+o", 0x4b600000, 0xffe00000, 0, 0, I1 }, -{"csbr", "t,+b,m", 0x4b800000, 0xffe0003f, 0, 0, I1 }, -{"cshr", "t,+b,m", 0x4ba00000, 0xffe0003f, 0, 0, I1 }, -{"cswr", "t,+b,m", 0x4bc00000, 0xffe0003f, 0, 0, I1 }, -{"csdr", "t,+b,m", 0x4be00000, 0xffe0003f, 0, 0, I1 }, -{"cjr", "+b,m", 0x49000000, 0xffff003f, 0, 0, I1 }, -{"cjalr", "+b,m", 0x48e00000, 0xffff003f, 0, 0, I1 }, +{"cscr", "+w,m(+b)", 0x49200000, 0xffe0003f, 0, 0, I1 }, +{"clcr", "+w,m(+b)", 0x49400000, 0xffe0003f, 0, 0, I1 }, +{"clb", "t,+o(+b)", 0x4a000000, 0xffe00000,0, 0, I1 }, +{"clh", "t,+o(+b)", 0x4a200000, 0xffe00000, 0, 0, I1 }, +{"clw", "t,+o(+b)", 0x4a400000, 0xffe00000, 0, 0, I1 }, +{"cld", "t,+o(+b)", 0x4a600000, 0xffe00000, 0, 0, I1 }, +{"clbr", "t,m(+b)", 0x4a800000, 0xffe0003f, 0, 0, I1 }, +{"clhr", "t,m(+b)", 0x4aa00000, 0xffe0003f, 0, 0, I1 }, +{"clwr", "t,m(+b)", 0x4ac00000, 0xffe0003f, 0, 0, I1 }, +{"cldr", "t,m(+b)", 0x4ae00000, 0xffe0003f, 0, 0, I1 }, +{"csb", "t,+o(+b)", 0x4b000000, 0xffe00000, 0, 0, I1 }, +{"csh", "t,+o(+b)", 0x4b200000, 0xffe00000, 0, 0, I1 }, +{"csw", "t,+o(+b)", 0x4b400000, 0xffe00000, 0, 0, I1 }, +{"csd", "t,+o(+b)", 0x4b600000, 0xffe00000, 0, 0, I1 }, +{"csbr", "t,m(+b)", 0x4b800000, 0xffe0003f, 0, 0, I1 }, +{"cshr", "t,m(+b)", 0x4ba00000, 0xffe0003f, 0, 0, I1 }, +{"cswr", "t,m(+b)", 0x4bc00000, 0xffe0003f, 0, 0, I1 }, +{"csdr", "t,m(+b)", 0x4be00000, 0xffe0003f, 0, 0, I1 }, +{"cjr", "m(+b)", 0x49000000, 0xffff003f, 0, 0, I1 }, +{"cjalr", "m(+b)", 0x48e00000, 0xffff003f, 0, 0, I1 }, {"csealcode","+w,+b", 0x48200000, 0xffe007ff, 0, 0, I1 }, {"csealdata","+w,+b,+v",0x48400000, 0xffe0003f, 0, 0, I1 }, {"cunseal", "+w,+b,+v", 0x48600000, 0xffe0003f, 0, 0, I1 },
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201207170926.q6H9QKoQ039917>