diff options
author | John van Groningen | 2006-05-11 14:49:32 +0000 |
---|---|---|
committer | John van Groningen | 2006-05-11 14:49:32 +0000 |
commit | 4e77f0d448c79055487bc9fde73b9557e4d3a811 (patch) | |
tree | 086a063a610b2b8a2007a59075c74f5278c42837 | |
parent | add shift_s instructions, use RELA for ELF, port to linux (diff) |
allow shifts up to 63 bits instead of 31
-rw-r--r-- | cgaas.c | 4 | ||||
-rw-r--r-- | cgawas.c | 4 |
2 files changed, 4 insertions, 4 deletions
@@ -2275,7 +2275,7 @@ static void as_shift_instruction (struct instruction *instruction,int shift_code store_c (0x48 | ((reg_n & 8)>>3)); store_c (0301); store_c (0300 | (shift_code<<3) | (reg_n & 7)); - store_c (instruction->instruction_parameters[0].parameter_data.i & 31); + store_c (instruction->instruction_parameters[0].parameter_data.i & 63); } else if ( instruction->instruction_parameters[0].parameter_type==P_REGISTER && instruction->instruction_parameters[0].parameter_data.reg.r==REGISTER_A0 @@ -2314,7 +2314,7 @@ static void as_shift_s_instruction (struct instruction *instruction,int shift_co store_c (0x48 | ((reg_n & 8)>>3)); store_c (0301); store_c (0300 | (shift_code<<3) | (reg_n & 7)); - store_c (instruction->instruction_parameters[0].parameter_data.i & 31); + store_c (instruction->instruction_parameters[0].parameter_data.i & 63); } else internal_error_in_function ("as_shift_s_instruction"); } else { @@ -1378,7 +1378,7 @@ static void w_as_shift_instruction (struct instruction *instruction,char *opcode w_as_opcode (opcode); if (intel_asm) w_as_register_comma (instruction->instruction_parameters[1].parameter_data.reg.r); - w_as_immediate (instruction->instruction_parameters[0].parameter_data.i & 31); + w_as_immediate (instruction->instruction_parameters[0].parameter_data.i & 63); if (!intel_asm) w_as_comma_register (instruction->instruction_parameters[1].parameter_data.reg.r); w_as_newline(); @@ -1429,7 +1429,7 @@ static void w_as_shift_s_instruction (struct instruction *instruction,char *opco w_as_opcode (opcode); if (intel_asm) w_as_register_comma (instruction->instruction_parameters[1].parameter_data.reg.r); - w_as_immediate (instruction->instruction_parameters[0].parameter_data.i & 31); + w_as_immediate (instruction->instruction_parameters[0].parameter_data.i & 63); if (!intel_asm) w_as_comma_register (instruction->instruction_parameters[1].parameter_data.reg.r); w_as_newline(); |