Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2017-01-02 | Update year range in copyright notice of all files. | Alan Modra | 1 | -1/+1 | |
2016-03-02 | Fix shift left warning at source | Alan Modra | 1 | -1/+1 | |
cpu/ * fr30.cpu (f-m4): Replace -1 << 4 with -16. opcodes/ * fr30-ibld.c: Regenerate. | |||||
2016-02-02 | opcodes/cgen: Rework calculation of shift when inserting fields | Andrew Burgess | 1 | -3/+10 | |
The calculation of the shift amount, used to insert fields into the instruction buffer, is not correct when the following conditions are all true: - CGEN_INT_INSN_P is defined, and true. - CGEN_INSN_LSB0_P is true - Total instruction length is greater than the length of a single instruction word (the instruction is made of multiple words) - The word offset is non-zero (the field is outside the first word) When the above conditions are all true, the calculated shift fails to take account of the total instruction length. After this commit the calculation of the shift amount is split into two parts, first we calculate the shift required to get to BIT0 of the word in which the field lives, then we calculate the shift required to place the field within the instruction word. The change in this commit only effects the CGEN_INT_INSN_P defined true case, but changes the code for both CGEN_INSN_LSB0_P true, and false. In the case of CGEN_INSN_LSB0_P being false, the code used to say: shift = total_length - (word_offset + start + length); Now it says: shift_to_word = total_length - (word_offset + word_length); shift_within_word = word_length - start - length; shift = shift_to_word + shift_within_word; From which we can see that in all cases the computed shift value should be unchanged. In the case of CGEN_INSN_LSB0_P being true, the code used to say: shift = (word_offset + start + 1) - length; Now it says: shift_to_word = total_length - (word_offset + word_length); shift_within_word = start + 1 - length; shift = shift_to_word + shift_within_word; In the case where 'total_length == word_length' AND 'word_offset == 0' (which indicates an instruction of a single word), we see that the computed shift value will be unchanged. However, when the total_length and word_length are different, and the word_offset is non-zero then the computed shift value will be different (and correct). opcodes/ChangeLog: * cgen-ibld.in (insert_normal): Rework calculation of shift. * epiphany-ibld.c: Regenerate. * fr30-ibld.c: Regenerate. * frv-ibld.c: Regenerate. * ip2k-ibld.c: Regenerate. * iq2000-ibld.c: Regenerate. * lm32-ibld.c: Regenerate. * m32c-ibld.c: Regenerate. * m32r-ibld.c: Regenerate. * mep-ibld.c: Regenerate. * mt-ibld.c: Regenerate. * or1k-ibld.c: Regenerate. * xc16x-ibld.c: Regenerate. * xstormy16-ibld.c: Regenerate. | |||||
2016-01-01 | Copyright update for binutils | Alan Modra | 1 | -1/+1 | |
2015-09-23 | Fix compile time warnings generated when compiling with clang. | Nick Clifton | 1 | -1/+1 | |
bfd * bout.c (b_out_slurp_reloc_table): Cast constant to unsigned in order to avoid problems with left shifting negative values. (abs32code): Likewise. * mach-o.c (FILE_ALIGN): Likewise. * coff-rs6000.c (xcoff_debug_sections): Delete unused static array. * elf32-visium.c (visium_reloc_map): Likewise. * elf32-arm.c (elf32_arm_final_link_relocate): Remove useless calls to abs function. * elf32-frv.c (_frvfdpic_relax_tls_entries): Likewise. * elf32-score.c (score_elf_final_link_relocate): Likewise. * elf32-score7.c (score_elf_final_link_relocate): Likewise. * elf32-i860.c (i860_howto_pc26_reloc): Use multiplication instead of shifting to create a negative mask. * elf32-msp430.c (elf_backend_special_sections): Define. * elfxx-mips.c (got_ofst_reloc_p): Delete unused function. (got_hi16_reloc_p): Delete unused function. * ppcboot.c (ppcboot_bfd_print_private_bfd_data): Fix test of partition name. gas * config/tc-ppc.c (insn_validate): Cast PPC_OPSHIFT_INV to an int. opcode * ppc.h (PPC_OPSHIFT_INV): Use an unsigned constant when left shifting. ld * emultempl/elf32.em (ehdr_start_empty): New static variable. (before_allocation): Use it to initialise ehdr_start_save. * emultempl/pe.em (write_build_id): Remove useless double parenthesis. * emultempl/pep.em (write_build_id): Likewise. opcodes * bfin-dis.c (fmtconst): Remove unnecessary call to the abs function. * tic30-dis.c (print_branch): Likewise. * cgen-asm.c (cgen_parse_signed_integer): Cast integer to signed value before left shifting. * fr30-ibld.c (fr30_cgen_extract_operand): Likewise. * hppa-dis.c (print_insn_hppa): Likewise. * mips-dis.c (mips_cp0sel_names_mipsr5900): Delete unused static array. * msp430-dis.c (msp430_singleoperand): Likewise. (msp430_doubleoperand): Likewise. (print_insn_msp430): Likewise. * nds32-asm.c (parse_operand): Likewise. * sh-opc.h (MASK): Likewise. * v850-dis.c (get_operand_value): Likewise. | |||||
2015-08-12 | Remove trailing spaces in opcodes | H.J. Lu | 1 | -4/+4 | |
2015-01-02 | ChangeLog rotatation and copyright year update | Alan Modra | 1 | -1/+1 | |
2014-03-05 | Update copyright years | Alan Modra | 1 | -2/+1 | |
2010-01-07 | * cgen-ibld.in (insert_normal, extract_normal): Minor cleanup. | Doug Evans | 1 | -3/+3 | |
* fr30-ibld.c, * frv-ibld.c, * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * openrisc-ibld.c, * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. | |||||
2010-01-06 | cpu/ | Doug Evans | 1 | -10/+11 | |
* m32c.cpu (f-dsp-32-u24): Fix mode of extract handler. (f-dsp-40-u20, f-dsp-40-u24): Ditto. opcodes/ * cgen-ibld.in: #include "cgen/basic-modes.h". * fr30-ibld.c, * frv-ibld.c, * ip2k-ibld.c, * iq2000-ibld.c, * lm32-ibld.c, * m32c-ibld.c, * m32r-ibld.c, * mep-ibld.c, * mt-ibld.c, * openrisc-ibld.c, * xc16x-ibld.c, * xstormy16-ibld.c: Regenerate. | |||||
2010-01-02 | * cgen-asm.in: Update copyright year. | Doug Evans | 1 | -1/+1 | |
* cgen-dis.in: Update copyright year. * cgen-ibld.in: Update copyright year. * fr30-asm.c, * fr30-desc.c, * fr30-desc.h, * fr30-dis.c, * fr30-ibld.c, * fr30-opc.c, * fr30-opc.h, * frv-asm.c, * frv-desc.c, * frv-desc.h, * frv-dis.c, * frv-ibld.c, * frv-opc.c, * frv-opc.h, * ip2k-asm.c, * ip2k-desc.c, * ip2k-desc.h, * ip2k-dis.c, * ip2k-ibld.c, * ip2k-opc.c, * ip2k-opc.h, * iq2000-asm.c, * iq2000-desc.c, * iq2000-desc.h, * iq2000-dis.c, * iq2000-ibld.c, * iq2000-opc.c, * iq2000-opc.h, * lm32-asm.c, * lm32-desc.c, * lm32-desc.h, * lm32-dis.c, * lm32-ibld.c, * lm32-opc.c, * lm32-opc.h, * lm32-opinst.c, * m32c-asm.c, * m32c-desc.c, * m32c-desc.h, * m32c-dis.c, * m32c-ibld.c, * m32c-opc.c, * m32c-opc.h, * m32r-asm.c, * m32r-desc.c, * m32r-desc.h, * m32r-dis.c, * m32r-ibld.c, * m32r-opc.c, * m32r-opc.h, * m32r-opinst.c, * mep-asm.c, * mep-desc.c, * mep-desc.h, * mep-dis.c, * mep-ibld.c, * mep-opc.c, * mep-opc.h, * mt-asm.c, * mt-desc.c, * mt-desc.h, * mt-dis.c, * mt-ibld.c, * mt-opc.c, * mt-opc.h, * openrisc-asm.c, * openrisc-desc.c, * openrisc-desc.h, * openrisc-dis.c, * openrisc-ibld.c, * openrisc-opc.c, * openrisc-opc.h, * xc16x-asm.c, * xc16x-desc.c, * xc16x-desc.h, * xc16x-dis.c, * xc16x-ibld.c, * xc16x-opc.c, * xc16x-opc.h, * xstormy16-asm.c, * xstormy16-desc.c, * xstormy16-desc.h, * xstormy16-dis.c, * xstormy16-ibld.c, * xstormy16-opc.c, * xstormy16-opc.h: Regenerate. | |||||
2009-01-20 | Regenerate for copyright date update. | Alan Modra | 1 | -2/+2 | |
2007-07-05 | Change source files over to GPLv3. | Nick Clifton | 1 | -8/+8 | |
2006-03-05 | * cgen-ibld.in (insert_normal): Cope with attempts to insert a signed 32-bit | Nick Clifton | 1 | -8/+15 | |
value into an unsigned 32-bit field when the host is a 64-bit machine. | |||||
2005-07-01 | Update function declarations to ISO C90 formatting | Nick Clifton | 1 | -78/+54 | |
2005-05-07 | Update the address and phone number of the FSF | Nick Clifton | 1 | -1/+1 | |
2003-08-09 | regenerate cgen files after prototype fix | Michael Meissner | 1 | -67/+69 | |
2002-01-22 | [ include/opcode/ChangeLog ] | Graydon Hoare | 1 | -4/+2 | |
2002-01-22 Graydon Hoare <graydon@redhat.com> * cgen.h (CGEN_MAYBE_MULTI_IFLD): New structure. (CGEN_OPERAND): Add CGEN_MAYBE_MULTI_IFLD field. [ opcodes/ChangeLog ] 2002-01-22 Graydon Hoare <graydon@redhat.com> * fr30-asm.c: Regenerate. * fr30-desc.c: Likewise. * fr30-desc.h: Likewise. * fr30-dis.c: Likewise. * fr30-ibld.c: Likewise. * fr30-opc.c: Likewise. * fr30-opc.h: Likewise. * m32r-asm.c: Likewise. * m32r-desc.c: Likewise. * m32r-desc.h: Likewise. * m32r-dis.c: Likewise. * m32r-ibld.c: Likewise. * m32r-opc.c: Likewise. * m32r-opc.h: Likewise. * m32r-opinst.c: Likewise. * openrisc-asm.c: Likewise. * openrisc-desc.c: Likewise. * openrisc-desc.h: Likewise. * openrisc-dis.c: Likewise. * openrisc-ibld.c: Likewise. * openrisc-opc.c: Likewise. * openrisc-opc.h: Likewise. * xstormy16-desc.c: Likewise. [ cgen/ChangeLog ] 2002-01-22 Graydon Hoare <graydon@redhat.com> * desc-cpu.scm (ifld-number-cache): Add. (ifld-number): Add. (gen-maybe-multi-ifld-of-op): Add. (gen-maybe-multi-ifld): Add. (gen-multi-ifield-nodes): Add. (cgen-desc.c): Add call to gen-multi-ifield-nodes. | |||||
2001-11-09 | Fix badly placed #if 0... | Nick Clifton | 1 | -2/+2 | |
2001-10-13 | Use safe-ctype.h not ctype.h | Nick Clifton | 1 | -1/+1 | |
2001-10-09 | Fix compile time warnings in cgen-generated files | Nick Clifton | 1 | -26/+32 | |
2001-09-19 | Fix compile time warning messages | Nick Clifton | 1 | -10/+33 | |
2001-09-19 | Locale changes from Bruno Haible <haible@clisp.cons.org>. | H.J. Lu | 1 | -1/+0 | |
2001-08-12 | * cgen-ibld.in (extract_normal): Match type of VALUE and MASK | Richard Henderson | 1 | -9/+24 | |
to *VALUEP. Regenerate all cgen files. | |||||
2001-03-13 | Fix typos in ChangeLogs; fix dates in copyright notices | Nick Clifton | 1 | -1/+1 | |
2001-03-05 | 2001-03-05 Dave Brolley <brolley@redhat.co | Dave Brolley | 1 | -107/+19 | |
* opcodes/fr30-asm.c: Regenerate. * opcodes/fr30-desc.c: Regenerate. * opcodes/fr30-desc.h: Regenerate. * opcodes/fr30-dis.c: Regenerate. * opcodes/fr30-ibld.c: Regenerate. * opcodes/fr30-opc.c: Regenerate. * opcodes/fr30-opc.h: Regenerate. * opcodes/m32r-asm.c: Regenerate. * opcodes/m32r-desc.c: Regenerate. * opcodes/m32r-desc.h: Regenerate. * opcodes/m32r-dis.c: Regenerate. * opcodes/m32r-ibld.c: Regenerate. * opcodes/m32r-opc.c: Regenerate. * opcodes/m32r-opc.h: Regenerate. * opcodes/m32r-opinst.c: Regenerate. | |||||
2000-08-28 | 2000-08-28 Dave Brolley <brolley@redhat.com> | Dave Brolley | 1 | -15/+62 | |
* cgen-ibld.in (cgen_put_insn_int_value): New function. (insert_normal): Allow for non-zero word_offset with CGEN_INT_INSN_P. (insert_insn_normal): Use cgen_put_insn_int_value with CGEN_INT_INSN_P. (extract_normal): Allow for non-zero word_offset with CGEN_INT_INSN_P. * cgen-dis.in (read_insn): New static function. (print_insn): Use read_insn to read the insn into the buffer and set up for disassembly. (print_insn): in CGEN_INT_INSN_P, make sure that the entire insn is in the buffer. * fr30-asm.c: Regenerated. * fr30-desc.c: Regenerated. * fr30-desc.h Regenerated. * fr30-dis.c: Regenerated. * fr30-ibld.c: Regenerated. * fr30-opc.c: Regenerated. * fr30-opc.h Regenerated. * m32r-asm.c: Regenerated. * m32r-desc.c: Regenerated. * m32r-desc.h Regenerated. * m32r-dis.c: Regenerated. * m32r-ibld.c: Regenerated. * m32r-opc.c: Regenerated. | |||||
1999-08-29 | * fr30-asm.c,fr30-desc.h,fr30-dis.c,fr30-ibld.c,fr30-opc.c: Rebuild. | Doug Evans | 1 | -26/+13 | |
* m32r-asm.c,m32r-desc.h,m32r-dis.c,m32r-ibld.c,m32r-opc.c: Rebuild. * m32r-opinst.c: Rebuild. | |||||
1999-05-03 | 19990502 sourceware importbinu_ss_19990502 | Richard Henderson | 1 | -0/+1506 | |