URL
https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 148 |
Rev 158 |
Line 7974... |
Line 7974... |
returns which instruction the bundle contains in that pipe. */
|
returns which instruction the bundle contains in that pipe. */
|
|
|
static const struct tilegx_opcode *
|
static const struct tilegx_opcode *
|
find_opcode (tilegx_bundle_bits bits, const unsigned short *table)
|
find_opcode (tilegx_bundle_bits bits, const unsigned short *table)
|
{
|
{
|
int index = 0;
|
int i = 0;
|
|
|
while (1)
|
while (1)
|
{
|
{
|
unsigned short bitspec = table[index];
|
unsigned short bitspec = table[i];
|
unsigned int bitfield =
|
unsigned int bitfield =
|
((unsigned int)(bits >> (bitspec & 63))) & (bitspec >> 6);
|
((unsigned int)(bits >> (bitspec & 63))) & (bitspec >> 6);
|
|
|
unsigned short next = table[index + 1 + bitfield];
|
unsigned short next = table[i + 1 + bitfield];
|
if (next <= TILEGX_OPC_NONE)
|
if (next <= TILEGX_OPC_NONE)
|
return & tilegx_opcodes[next];
|
return & tilegx_opcodes[next];
|
|
|
index = next - TILEGX_OPC_NONE;
|
i = next - TILEGX_OPC_NONE;
|
}
|
}
|
}
|
}
|
|
|
int
|
int
|
parse_insn_tilegx (tilegx_bundle_bits bits,
|
parse_insn_tilegx (tilegx_bundle_bits bits,
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.