summaryrefslogtreecommitdiffstats
path: root/libpixelflinger/codeflinger/disassem.c
diff options
context:
space:
mode:
authorJean-Baptiste Queru <jbq@google.com>2010-04-29 09:11:37 -0700
committerAndroid Code Review <code-review@android.com>2010-04-29 09:11:37 -0700
commit86abd5fcabd78216f61448987e092ff084a655a9 (patch)
tree6c0ba37f1c08f33ac23eb81cc33579a3525180b8 /libpixelflinger/codeflinger/disassem.c
parent8ecf93485f7907cd22e584346e60bb05dedd2dba (diff)
parent96dbb4fc58fe2dcf4390e073dbb42cc77ef2f0b5 (diff)
downloadsystem_core-86abd5fcabd78216f61448987e092ff084a655a9.zip
system_core-86abd5fcabd78216f61448987e092ff084a655a9.tar.gz
system_core-86abd5fcabd78216f61448987e092ff084a655a9.tar.bz2
Merge "Adds UXTB16 support to Pixelflinger"
Diffstat (limited to 'libpixelflinger/codeflinger/disassem.c')
-rw-r--r--libpixelflinger/codeflinger/disassem.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libpixelflinger/codeflinger/disassem.c b/libpixelflinger/codeflinger/disassem.c
index 4676da0..ee5e63a 100644
--- a/libpixelflinger/codeflinger/disassem.c
+++ b/libpixelflinger/codeflinger/disassem.c
@@ -80,6 +80,7 @@
* f - 1st fp operand (register) (bits 12-14)
* g - 2nd fp operand (register) (bits 16-18)
* h - 3rd fp operand (register/immediate) (bits 0-4)
+ * j - xtb rotate literal (bits 10-11)
* b - branch address
* t - thumb branch address (bits 24, 0-23)
* k - breakpoint comment (bits 0-3, 8-19)
@@ -122,6 +123,7 @@ static const struct arm32_insn arm32_i[] = {
{ 0x0fe000f0, 0x00c00090, "smull", "Sdnms" },
{ 0x0fe000f0, 0x00a00090, "umlal", "Sdnms" },
{ 0x0fe000f0, 0x00e00090, "smlal", "Sdnms" },
+ { 0x0fff03f0, 0x06cf0070, "uxtb16", "dmj" },
{ 0x0d700000, 0x04200000, "strt", "daW" },
{ 0x0d700000, 0x04300000, "ldrt", "daW" },
{ 0x0d700000, 0x04600000, "strbt", "daW" },
@@ -406,6 +408,10 @@ disasm(const disasm_interface_t *di, u_int loc, int altfmt)
else
di->di_printf("f%d", insn & 7);
break;
+ /* j - xtb rotate literal (bits 10-11) */
+ case 'j':
+ di->di_printf("ror #%d", ((insn >> 10) & 3) << 3);
+ break;
/* b - branch address */
case 'b':
branch = ((insn << 2) & 0x03ffffff);