OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_52/] [or1ksim/] [cuc/] [insn.h] - Diff between revs 879 and 883

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 879 Rev 883
Line 56... Line 56...
#define II_MASK   0x0fff
#define II_MASK   0x0fff
#define II_MEM    0x1000
#define II_MEM    0x1000
#define II_SIGNED 0x2000
#define II_SIGNED 0x2000
 
 
#define II_IS_LOAD(x) ((x) == II_LB || (x) == II_LH || (x) == II_LW)
#define II_IS_LOAD(x) ((x) == II_LB || (x) == II_LH || (x) == II_LW)
#define II_MEM_WIDTH(x) ((x) == II_LB || (x) == II_SB ? 1 :\
#define II_MEM_WIDTH(x) (((x) == II_LB || (x) == II_SB) ? 1 :\
                         (x) == II_LH || (x) == II_SH ? 1 :\
                         ((x) == II_LH || (x) == II_SH) ? 2 :\
                         (x) == II_LW || (x) == II_SW ? 1 : -1)
                         ((x) == II_LW || (x) == II_SW) ? 4 : -1)
 
 
/* Clock speed in ns */
/* Clock speed in ns */
extern double cycle_duration;
extern double cycle_duration;
 
 
/* List of known instructions and their rtl representation */
/* List of known instructions and their rtl representation */
Line 86... Line 86...
typedef struct {
typedef struct {
        const char *from;
        const char *from;
        const int to;
        const int to;
} cuc_conv;
} cuc_conv;
 
 
 
/* normal (not immediate) size of a function */
 
double ii_size (int index, int imm);
 
 
 
/* Returns instruction size */
 
double insn_time (cuc_insn *ii);
 
 
 
/* Returns instruction time */
 
double insn_size (cuc_insn *ii);
 
 
/* Find known instruction and attach them to insn */
/* Find known instruction and attach them to insn */
void change_insn_type (cuc_insn *i, int index);
void change_insn_type (cuc_insn *i, int index);
 
 
/* Returns instruction name */
/* Returns instruction name */
const char *cuc_insn_name (cuc_insn *ii);
const char *cuc_insn_name (cuc_insn *ii);

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.