URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [ChangeLog.or32] - Rev 515
Go to most recent revision | Compare with Previous | Blame | View Log
2011-04-09 Jeremy Bennett <jeremy.bennett@embecosm.com>
* BASE_VER: Updated for gcc-4.5.1-or32-1.0rc3.
2011-03-22 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.h (LEGITIMATE_CONSTANT_P): Allow VOIDmode
CONST_DOUBLE.
* config/or32/or32.md (movsi_insn_big): Enable splitting of CONST_INT.
(movdi): Now a define_insn_and_split.
* config/or32/or32.c (or32_output_move_double): Abort for CONST_INT.
2011-02-17 Joern Rennecke <joern.rennecke@embecosm.com>
* gcc.c (do_spec_1) <%*>: Don't append a space unless the next
character is '}'.
* config/or32/or32.h (STARTFILE_SPEC): For mor32-newlib-*,
add crtparam-%*.o.
2011-02-15 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.md (frame_alloc_fp): New pattern.
* config/or32/or32.c (or32_expand_prologue): Use it if a frame pointer
is used.
2011-02-03 Joern Rennecke <joern.rennecke@embecosm.com>
* config/uclibc-stdint.h: New file.
* config.gcc (or32-*linux*): Add uclibc-stdint.h to tm_file.
2011-02-03 Jonas Bonn <jonas@southpole.se>
* config/or32/or32.h (CALL_USED_REGS): Include r12.
2011-01-12 Joern Rennecke <joern.rennecke@embecosm.com>
* config.or32/or32.h (CPP_SPEC): Add -D_XOPEN_SOURCE=600 for pthread.
(LIB_SPEC): Add --whole-archive -lpthread --no-whole-archive for
pthread.
2010-12-19 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config.gcc <or32-*-linux*>: Remove extra_parts.
* config/or32/crti.S (__init): Add l.nop, so doesn't start at zero.
2010-12-19 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/crtn.S (__init, __fini): remove labels.
* config.gcc <or32-*-linux*>: Add crti.o and crt.n to extra_parts.
2010-12-16 Joern Rennecke <joern.rennecke@embecosm.com>
* config.gcc (or32-*-elf*) <tm_defines>:
Add OR32_LIBC_DEFAULT=or32_libc_newlib.
(or32-*linux*) <tm_defines>: Set UCLIBC_DEFAULT=1.
Add OR32_LIBC_DEFAULT=or32_libc_uclibc.
* config/or32/or32.opt (mnewlib): New option.
(muclibc, mglibc): Stub options.
* config/or32/or32.h (TARGET_CPU_CPP_BUILTINS): When using uClibc,
define __UCLIBC__.
(or32_libc_kind): New enum.
* config/or32/or32.c (or32_handle_option): New function.
(TARGET_HANDLE_OPTION): Override.
2010-12-10 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.c (TARGET_STRICT_ARGUMENT_NAMING): Overrride.
2010-11-18 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/t-linux ($(T)crtbegin.o): Reverse out __dso_handle
rename.
(crtbegin$(objext)): Likewise.
2010-11-07 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.opt (mredzone=): New option.
* config/or32/or32.c (frame_info): New members gpr_frame, late_frame.
(or32_compute_frame_size, or32_expand_prologue): Implement -mredzone.
or32_expand_epilogue, or32_initial_elimination_offset): Likewise.
(or32_function_ok_for_sibcall): Suppress sibcall optimization if
the sibcall register might not be available.
* config/or32/or32.c (or32_expand_prologue): Fix threshold for
loading the frame size into a register.
* config/or32/or32.md (SP_REG, FP_REG, UNSPEC_FRAME): New constants.
(frame_dealloc_fp, frame_dealloc_sp): New insn patterns.
* config/or32/or32.c (or32_expand_epilogue): Use frame_dealloc_[fs]p.
2010-11-01 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
* config/or32/t-linux ($(T)crtbegin.o): Rename __dso_handle.
(crtbegin$(objext)): Likewise.
2010-10-31 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.c (or32_struct_alignment): Refine rules to
avoid overriding user settings.
* Don't increase alignment of struct with sole packed field.
2010-10-29 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.c (or32_output_mi_thunk): New function.
(or32_output_highadd, or32_output_tailcall): Likewise.
(TARGET_ASM_OUTPUT_MI_THUNK): Redefine.
(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Likewise.
(or32_output_mi_thunk): Don't emit add of zero delta.
* config/or32/or32.opt: Remove -maj option.
* config/or32/or32.md, config/or32/or32.c: Likewise.
* config.gcc: Add Embecosm Copyright notice.
* config/or32/predicates.md: Likewise.
* config/or32/or32.md: Likewise.
* config/or32/t-or32: Likewise.
* config/or32/or32.opt: Likewise.
* config/or32/or32-protos.h: Likewise.
* config/or32/crti.S: Likewise.
* config/or32/or32.c: Likewise.
* config/or32/constraints.md: Likewise.
* config/or32/crtn.S: Likewise.
* config/or32/default.h: Likewise.
* config/or32/or32.h: Likewise.
2010-10-28 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.md (movsi_lo_sum, movsi_high): Enable generator
function generation.
(movsi_insn_big): Now define_insn_and_split.
* config.gcc (or32-*-elf*): Change extra_parts to:
"crti.o crtbegin.o crtend.o crtn.o".
( or32-*linux*): Change tmake_file to
"${cpu_type}/t-${cpu_type} or32/t-linux"
* config/or32/t-default, config/or32/initfini.c: Delete.
* t-or32 ((T)or32-crtbegin.o, $(T)or32-crtend.o): Replace with:
((T)crti.o, $(T)crtn.o).
* config/or32/t-linux: New file.
* config/or32/crti.S, config/or32/crtn.S: Likewise.
* config/or32/or32.h (STARTFILE_SPEC): Replace or32-crtbegin.o%s with
crti.o%s crtbegin.o%s.
(ENDFILE_SPEC): Set to crtend.o%s crtn.o%s.
* config/or32/elf.h (DBX_DEBUGGING_INFO): Don't redefine.
(PREFERRED_DEBUGGING_TYPE, PUT_SDB_DEF): Likewise.
* config/or32/or32.md (tablejump): For -fpic, emit add of table base.
2010-10-26 Joern Rennecke <joern.rennecke@embecosm.com>
* config.gcc (or32-*-elf*): Rename crtinit.o / crtfini.o
to or32-crtbegin.o / or32-crtend.o.
* config/or32/t-default, config/or32/t-or32 (Entire file): Likewise.
* config/or32/initfini.c, config/or32/or32.h: Likewise.
2010-10-26 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.opt Mask(MASK_SCHED_LOGUE): Renamed to
Mask(SCHED_LOGUE). Changed all users.
(-msibcall): Delete option.
* config/or32/or32.md (sibcall, sibcall_value, sibcall_internal): Make
patterns unconditional.
(sibcall_internal): Change alternatives to handle callee-saved
registers correctly.
* config/or32/or32.c (or32_compute_frame_size): Place register save
area at bottom of frame.
(or32_expand_prologue): Initialize frame pointer from stack pointer.
For large offsets, add a REG_FRAME_RELATED_EXPR note.
(or32_expand_epilogue): Restore stack pointer from frame pointer.
sibcall is now the sibcall epilogue insn to be split.
(or32_compute_frame_size, or32_expand_prologue, or32_expand_epilogue):
Use PROLOGUE_TMP and EPILOGUE_TMP.
(or32_function_ok_for_sibcall): Retrun true.
(TARGET_DEFAULT_TARGET_FLAGS): Include MASK_SCHED_LOGUE.
(PROLOGUE_TMP, EPILOGUE_TMP): Define.
* config/or32/or32.md (CC_REG): New constant. Use it to denote
register number of flags register.
Include constraints.md.
* config/or32/predicates.md (cc_reg_operand): Use CC_REG.
(input_operand): Use satisfies_constraint_[KMI].
* config/or32/or32-protos.h (or32_initial_elimination_offset): Declare.
(or32_print_jump_restore): Declare.
* config/or32/or32.h (OR32_LAST_ACTUAL_REG): Define. Use in place of
OR32_LAST_INT_REG to iterate through registers where appropriate.
(ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): Define.
(ARG_POINTER_REGNUM, FRAME_POINTER_REGNUM): Define as fake hard
registers.
(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_CLASS_CONTENTS): Update.
(REGNO_REG_CLASS, REGISTER_NAMES): : Likewise.
* config/or32/or32.c: Use HARD_FRAME_POINTER_REGNUM /
hard_frame_pointer_rtx to refer to the hard frame pointer.
(or32_emit_move): Now static.
(or32_print_jump_restore): New function.
(or32_compute_frame_size): Distinguish between saving the hard frame
pointer and saving the GPR with the regno of the eliminated frame
pointer.
(indexed_memory): Delete.
(stack_disp_mem): New function.
(or32_compute_frame_size): Avoid over-wide shifts.
(or32_output_function_prologue): Likewise.
(or32_output_function_epilogue): Likewise.
(or32_frame_pointer_required): Comment out.
(or32_initial_elimination_offset): New function.
(TARGET_FRAME_POINTER_REQUIRED): Don't redefine.
(PRINT_OPERAND): Handle %J.
* config/or32/constraints.md: New file.
2010-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32-protos.h (get_hard_reg_initial_val): Declare.
* config/or32/or32.h (INCOMING_RETURN_ADDR_RTX): Fix register number.
* (RETURN_ADDR_RTX): Define.
2010-10-12 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.c (or32_struct_alignment): Round up alignment to
power of two.
For unions, use maximum of field size for size estimate.
2010-10-11 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.opt (mpadstruct): New option.
* config/or32/or32-protos.h (or32_struct_alignment): Declare.
(or32_data_alignment): Likewise.
* config/or32/or32.c (or32_struct_alignment): New function.
(or32_data_alignment): Likewise.
* config/or32/or32.h (STRUCTURE_SIZE_BOUNDARY): Default to 8.
(ROUND_TYPE_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT): Define.
* config/or32/or32.c (or32_struct_alignment): Take
maximum_field_alignment into account.
2010-09-14 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.h (ASM_OUTPUT_ADDR_DIFF_ELT): Fix typo.
(JUMP_TABLES_IN_TEXT_SECTION): Define.
* config/or32/default.h (JUMP_TABLES_IN_TEXT_SECTION): Use flag_pic.
2010-09-13 Joern Rennecke <joern.rennecke@embecosm.com>
* config/or32/or32.h (TRAMPOLINE_SIZE): Use result of
or32_trampoline_code_size rather than its address.
* config/or32/initfini.c (init): Rename to:
(__init).
* config/or32/or32.c (or32_trampoline_init): Don't clobber r12.
* config.gcc (or32-*-elf*): Add newlib-stdint.h to tm_file.
2010-09-05 Jeremy Bennett <jeremy.bennett@embecosm.com>
* BASE_VER: Updated for gcc-4.5.1-or32-1.0rc1.
2010-09-05 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32-protos.c <or32_trampoline_code_size>: Added.
* config/or32/or32.c <TARGET_DEFAULT_TARGET_FLAGS>: Added.
* config/or32/or32.h <TARGET_DEFAULT>: Deleted.
* doc/contrib.texi: Updated for OpenRISC.
* doc/invoke.texi: Updated for OpenRISC.
2010-09-04 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32-protos.c <or32_trampoline_code_size>: Added.
* config/or32/or32.c <OR32_MOVHI, OR32_ORI, OR32_LWZ, OR32_JR>:
New macros added.
(or32_emit_mode, or32_emit_binary, or32_force_binary)
(or32_trampoline_code_size, or32_trampoline_init): Created.
(or32_output_bf): Tabbing fixed.
<TARGET_TRAMPOLINE_INIT>: Definition added.
* config/or32/or32.h <STATIC_CHAIN_REGNUM>: Uses R11.
<TRAMPOLINE_SIZE>: redefined.
<TRAMPOLINE_ENVIRONMENT>: Added definition.
2010-09-01 Jeremy Bennett <jeremy.bennett@embecosm.com>
* haifa-sched.c (initiate_bb_reg_pressure_info): Declaration of i
made conditional to avoid warning.
* or32.c: Updated for compatibility with GCC 4.5.1. Redundant
functions remobed. Now contains all target hooks.
* or32.h: Complete rewrite for compatibility with GCC
4.5.1. Removed all target hooks.
* or32.md: Rewrite for compatibility with GCC 4.5.1.
* or32-protos.h: Updated to match or32.c.
2010-09-01 Jeremy Bennett <jeremy.bennett@embecosm.com>
* .: All files updated to GCC 4.5.1 base.
2010-08-26 mirekez <mirekez@gmail.com>
* config/or32/or32.h <enum reg_class>: CR_REGS removed from
enumeration.
2010-08-26 Jeremy Bennett <jeremy.bennett@embecosm.com>
* vec.h: All references to VEC_TA_GTY with an empty fourth
argument replaced by VEC_TA_GTY_ANON with only three arguments
<VEC_TA_GTY_ANON>: Created.
2010-08-25 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/elf.h <DWARF2_DEBUGGING_INFO>: Defined.
<PREFERRED_DEBUGGING_TYPE>: Changed to DWARF2_DEBUG.
<PUT_SDB_DEF>: Deleted.
* config/or32/or32.h: Obsolete code surrounded by "#if 0" removed
for clarity.
<SDB_DELIM>: Definition deleted.
<DBX_CONTIN_LENGTH, DBX_CONTIN_CHAR, DBX_REGISTER_NUMBER>:
Definition deleted (default suffices).
<DWARF2_UNWIND_INFO, DWARF2_FRAME_INFO>: Defined.
<DWARF2_ASM_LINE_DEBUG_INFO, INCOMIN_RETURN_ADDR_RTX>: Defined.
* config/or32/or32.md: Commenting clarified. Obsolete code for
define_function_unit deleted.
2010-08-19 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/elf.h <PUT_SDB_DEF>: Definition removed.
<USER_LABEL_PREFIX>: Modified to match or32.h
* config/or32/linux-elf.h<USER_LABEL_PREFIX>: Modified to match
or32.h
* config/or32/or32.h <LIB_SPEC>: Changed to use free instead of
_free to match change in USER_LABEL_PREFIX.
<USER_LABEL_PREFIX>: Changed from "_" to "".
<ASM_OUTPUT_FUNCTION_PREFIX>: Surround .proc by tab chars.
* config/or32/or32.S (__mulsi3, __udivsi3, __divsi3, __umodsi3)
(__modsi3): Changed from ___mulsi3, ___udivsi3, ___divsi3,
___umodsi3 and ___modsi3 respectively to match change in
USER_LABEL_PREFIX.
2010-07-20 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.h: Updated LIB_SPEC for newlib 1.18.0 to force
linking of _malloc and _free against a weak reference also when
using -lg.
2010-07-19 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.h: Updated LIB_SPEC for newlib 1.18.0 to force
linking of _malloc and _free against a weak reference.
2010-07-17 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.h: Updated STARTFILE_SPEC and LIB_SPEC
definition for newlib.
2010-07-16 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.h: Updated SPEC definitions to pick up newlib
in custom location.
2010-07-13 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/initfini.c: Corrected assembler sequences.
2010-07-07 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config.gcc: Specified cpu_type for or32. Corrected templates
specified for or32-*-elf*. Added extra_parts for
or32-*-elf*. Specified t-or32 as tmake_file for or32-*-elf*.
* config/or32/initfini.c: Created.
* config/or32/or32.h <LINK_SPEC>: Removed.
<STARTFILE_SPEC>: Add crtinit.o.
<ENDFILE_SPEC>: Just specify crtfini.o.
<LIB_SPEC>: Unified multiple definitions. Added newlib library
when specified.
* config/or32/or32.opt <mor32-newlib-uart>: New option added.
* config/or32/t-default: Added details for crtinit and crtfini.
* config/or32/t-or32: Added details for crtinit and crtfini.
2010-06-30 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.h <FUNCTION_PROFILER>: Corrected definition.
<LINK_SPEC>: Pick up newlib specific linker script.
<ENDFILE_SPEC>: Specify newlib library.
* config/or32/or32.opt <mor32-newlib>: New option added.
2010-06-21 Jeremy Bennett <jeremy.bennett@embecosm.com>
* config/or32/or32.md: Duplicate define_insn of "movdf" and "movsf"
removed.
2010-06-17 Jungsook yang <jungsook.yang@uci.edu>
* config/or32/or32.c (or32_expand_branch): Added SFmode case.
* config/or32/or32.md <define_expand "*cmpsf">: Added.
<define_expand "*cmpsf_eq">: Added.
<define_expand "*cmpsf_ne">: Added.
<define_expand "*cmpsf_gt">: Added.
<define_expand "*cmpsf_ge">: Added.
<define_expand "*cmpsf_lt">: Added.
<define_expand "*cmpsf_le">: Added.
<define_insn "movdf">: Added.
<define_insn "movsf">: Added.
<define_insn "adddf3">: Added TARGET_DOUBLE_FLOAT.
<define_insn "subdf3">: Added TARGET_DOUBLE_FLOAT.
<define_insn "muldf3">: Added TARGET_DOUBLE_FLOAT.
<define_insn "divdf3">: Added TARGET_DOUBLE_FLOAT.
<define_insn "floatsisf2">: Added.
<define_insn "fixunssfsi2">: Added.
<define_insn "movdf">: Added.
<define_insn "movsf">: Added.
* config/or32/or32.opt: mdouble-float option added.
Go to most recent revision | Compare with Previous | Blame | View Log