aboutsummaryrefslogtreecommitdiff
path: root/disas/microblaze.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2017-07-04 13:05:30 +0100
committerPeter Maydell <peter.maydell@linaro.org>2017-07-04 13:05:30 +0100
commit2185c93ba80f81bfa27ce6f259c7f2ef4f08b668 (patch)
treef2bfba6f066e0f5da675ad95bf1cb2df4921a5c0 /disas/microblaze.c
parent0c7a8b9baa744ae4323bb46cb4fe942355beaa85 (diff)
parent31cf950ea2a010c33e5384aaba91f01dc27c1599 (diff)
downloadqemu-2185c93ba80f81bfa27ce6f259c7f2ef4f08b668.zip
qemu-2185c93ba80f81bfa27ce6f259c7f2ef4f08b668.tar.gz
qemu-2185c93ba80f81bfa27ce6f259c7f2ef4f08b668.tar.bz2
Merge remote-tracking branch 'remotes/edgar/tags/edgar/xilinx-next.for-upstream' into staging
edgar/xilinx-next.for-upstream # gpg: Signature made Tue 04 Jul 2017 10:00:47 BST # gpg: using RSA key 0x29C596780F6BCA83 # gpg: Good signature from "Edgar E. Iglesias (Xilinx key) <edgar.iglesias@xilinx.com>" # gpg: aka "Edgar E. Iglesias <edgar.iglesias@gmail.com>" # Primary key fingerprint: AC44 FEDC 14F7 F1EB EDBF 4151 29C5 9678 0F6B CA83 * remotes/edgar/tags/edgar/xilinx-next.for-upstream: xilinx-dp: Add support for the yuy2 video format target-microblaze: Add CPU version 10.0 target-microblaze: dec_barrel: Add BSIFI target-microblaze: dec_barrel: Add BSEFI target-microblaze: dec_barrel: Plug TCG temp leak target-microblaze: dec_barrel: Add braces around if-statements target-microblaze: dec_barrel: Use extract32 target-microblaze: dec_barrel: Use bool instead of unsigned int target-microblaze: Introduce a use-pcmp-instr property target-microblaze: Introduce a use-msr-instr property target-microblaze: Introduce a use-hw-mul property target-microblaze: Introduce a use-div property target-microblaze: Introduce a use-barrel property target-microblaze: Add CPU versions 9.4, 9.5 and 9.6 target-microblaze: Don't hard code 0xb as initial MB version target-microblaze: Correct bit shift for the PVR0 version field disas/microblaze: Add missing 'const' attributes Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'disas/microblaze.c')
-rw-r--r--disas/microblaze.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/disas/microblaze.c b/disas/microblaze.c
index 7795a0b..598ecbc 100644
--- a/disas/microblaze.c
+++ b/disas/microblaze.c
@@ -272,7 +272,7 @@ enum microblaze_instr_type {
#define MAX_OPCODES 280
-static struct op_code_struct {
+static const struct op_code_struct {
const char *name;
short inst_type; /* registers and immediate values involved */
short inst_offset_type; /* immediate vals offset from PC? (= 1 for branches) */
@@ -596,10 +596,6 @@ static char * get_field_imm15 (long instr);
#if 0
static char * get_field_unsigned_imm (long instr);
#endif
-char * get_field_special (long instr, struct op_code_struct * op);
-unsigned long read_insn_microblaze (bfd_vma memaddr,
- struct disassemble_info *info,
- struct op_code_struct **opr);
static char *
get_field (long instr, long mask, unsigned short low)
@@ -664,8 +660,8 @@ get_field_unsigned_imm (long instr)
}
*/
-char *
-get_field_special (long instr, struct op_code_struct * op)
+static char *
+get_field_special(long instr, const struct op_code_struct *op)
{
char tmpstr[25];
char spr[6];
@@ -729,14 +725,14 @@ get_field_special (long instr, struct op_code_struct * op)
return(strdup(tmpstr));
}
-unsigned long
+static unsigned long
read_insn_microblaze (bfd_vma memaddr,
struct disassemble_info *info,
- struct op_code_struct **opr)
+ const struct op_code_struct **opr)
{
unsigned char ibytes[4];
int status;
- struct op_code_struct * op;
+ const struct op_code_struct *op;
unsigned long inst;
status = info->read_memory_func (memaddr, ibytes, 4, info);
@@ -772,7 +768,7 @@ print_insn_microblaze (bfd_vma memaddr, struct disassemble_info * info)
fprintf_function fprintf_func = info->fprintf_func;
void * stream = info->stream;
unsigned long inst, prev_inst;
- struct op_code_struct * op, *pop;
+ const struct op_code_struct *op, *pop;
int immval = 0;
bfd_boolean immfound = FALSE;
static bfd_vma prev_insn_addr = -1; /*init the prev insn addr */