|
Message
From: OpenCores CVS Agent<cvs@o...>
Date: Thu Jan 27 14:18:48 CET 2005
Subject: [cvs-checkins] MODIFIED: or1k ...
Date: 00/05/01 27:14:18 Modified: or1k/or1ksim/cpu/or1k/opcode or32.h Log: Mark wich operand is the destination operand in the architechture definition Revision Changes Path 1.19 +10 -2 or1k/or1ksim/cpu/or1k/opcode/or32.h http://www.opencores.org/cvsweb.shtml/or1k/or1ksim/cpu/or1k/opcode/or32.h.diff?r1=1.18&r2=1.19 (In the diff below, changes in quantity of whitespace are not shown.) Index: or32.h =================================================================== RCS file: /cvsroot/nogj/or1k/or1ksim/cpu/or1k/opcode/or32.h,v retrieving revision 1.18 retrieving revision 1.19 diff -u -b -r1.18 -r1.19 --- or32.h 11 Jan 2005 15:41:54 -0000 1.18 +++ or32.h 27 Jan 2005 13:17:08 -0000 1.19 @@ -61,7 +61,7 @@ ,() Itself. Characters appears in the assembly code. rA Register operand. rB Register operand. - rD Register operand. + rD Register operand (destination). I An immediate operand, range -32768 to 32767. J An immediate operand, range . (unused) K An immediate operand, range 0 to 65535. @@ -74,7 +74,7 @@ /* Opcode and operand encoding. */ char *encoding; -#if defined HAS_EXECUTION && !SIMPLE_EXECUTION +#if defined(HAS_EXECUTION) && !SIMPLE_EXECUTION char *function_name; #else /* defined HAS_EXECUTION && !SIMPLE_EXECUTION */ void (*exec)(); @@ -83,13 +83,21 @@ unsigned int flags; }; +/* This operand is the last in the list */ #define OPTYPE_LAST (0x80000000) +/* This operand marks the end of the operand sequence (for things like I(rD)) */ #define OPTYPE_OP (0x40000000) +/* The operand specifies a register index */ #define OPTYPE_REG (0x20000000) +/* The operand must be sign extended */ #define OPTYPE_SIG (0x10000000) +/* Operand is a relative address, the `I' in `I(rD)' */ #define OPTYPE_DIS (0x08000000) +/* The operand is a destination */ #define OPTYPE_DST (0x04000000) +/* Which bit of the operand is the sign bit */ #define OPTYPE_SBIT (0x00001F00) +/* Amount to shift the instruction word right to get the operand */ #define OPTYPE_SHR (0x0000001F) #define OPTYPE_SBIT_SHR (8)
|
 |