Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 231868
b: refs/heads/master
c: 8d662c8
h: refs/heads/master
v: v3
  • Loading branch information
David Daney authored and Ralf Baechle committed Jan 18, 2011
1 parent 5f05337 commit 03dae7a
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 25 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2c8c53e28f178577dfdf3a69731b998b7e3df8ae
refs/heads/master: 8d662c8d34a05e8e47deaa9e22fe770dc557c2d3
40 changes: 16 additions & 24 deletions trunk/arch/mips/mm/uasm.c
Original file line number Diff line number Diff line change
Expand Up @@ -156,91 +156,83 @@ static struct insn insn_table[] __uasminitdata = {

static inline __uasminit u32 build_rs(u32 arg)
{
if (arg & ~RS_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~RS_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return (arg & RS_MASK) << RS_SH;
}

static inline __uasminit u32 build_rt(u32 arg)
{
if (arg & ~RT_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~RT_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return (arg & RT_MASK) << RT_SH;
}

static inline __uasminit u32 build_rd(u32 arg)
{
if (arg & ~RD_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~RD_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return (arg & RD_MASK) << RD_SH;
}

static inline __uasminit u32 build_re(u32 arg)
{
if (arg & ~RE_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~RE_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return (arg & RE_MASK) << RE_SH;
}

static inline __uasminit u32 build_simm(s32 arg)
{
if (arg > 0x7fff || arg < -0x8000)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg > 0x7fff || arg < -0x8000,
KERN_WARNING "Micro-assembler field overflow\n");

return arg & 0xffff;
}

static inline __uasminit u32 build_uimm(u32 arg)
{
if (arg & ~IMM_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~IMM_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return arg & IMM_MASK;
}

static inline __uasminit u32 build_bimm(s32 arg)
{
if (arg > 0x1ffff || arg < -0x20000)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg > 0x1ffff || arg < -0x20000,
KERN_WARNING "Micro-assembler field overflow\n");

if (arg & 0x3)
printk(KERN_WARNING "Invalid micro-assembler branch target\n");
WARN(arg & 0x3, KERN_WARNING "Invalid micro-assembler branch target\n");

return ((arg < 0) ? (1 << 15) : 0) | ((arg >> 2) & 0x7fff);
}

static inline __uasminit u32 build_jimm(u32 arg)
{
if (arg & ~((JIMM_MASK) << 2))
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~(JIMM_MASK << 2),
KERN_WARNING "Micro-assembler field overflow\n");

return (arg >> 2) & JIMM_MASK;
}

static inline __uasminit u32 build_scimm(u32 arg)
{
if (arg & ~SCIMM_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~SCIMM_MASK,
KERN_WARNING "Micro-assembler field overflow\n");

return (arg & SCIMM_MASK) << SCIMM_SH;
}

static inline __uasminit u32 build_func(u32 arg)
{
if (arg & ~FUNC_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~FUNC_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return arg & FUNC_MASK;
}

static inline __uasminit u32 build_set(u32 arg)
{
if (arg & ~SET_MASK)
printk(KERN_WARNING "Micro-assembler field overflow\n");
WARN(arg & ~SET_MASK, KERN_WARNING "Micro-assembler field overflow\n");

return arg & SET_MASK;
}
Expand Down

0 comments on commit 03dae7a

Please sign in to comment.