aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
AgeCommit message (Collapse)AuthorFilesLines
2000-05-15Update to libgcc copyright exception clause.Jeff Law22-219/+150
From-SVN: r33916
2000-05-14rs6000.h (RETURN_ADDRESS_OFFSET): Correct for 64-bit ABI.Geoff Keating1-1/+1
* config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Correct for 64-bit ABI. From-SVN: r33900
2000-05-14rs6000.c (logical_operand): Rewrite to take MODE into account.Geoff Keating4-876/+321
* config/rs6000/rs6000.c (logical_operand): Rewrite to take MODE into account. (logical_u_operand): Delete. (non_logical_cint_operand): Rewrite to take MODE into account. (non_logical_u_cint_operand): Delete. (boolean_operator): New function. (print_operand): Add new %q operand. * config/rs6000/rs6000.h (PREDICATE_CODES): Add boolean_operator, remove logical_u_operand and non_logical_u_cint_operand, update logical_operand and non_logical_cint_operand. * config/rs6000/rs6000.md: Rewrite the patterns for performing logical operations to use %q. From-SVN: r33899
2000-05-14rs6000.md (movsi): Don't modify RTL in-place.Geoff Keating3-15/+13
* config/rs6000/rs6000.md (movsi): Don't modify RTL in-place. (movdi): Make similar to movsi. * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): There is no such thing as a DImode CONST_DOUBLE. * config/rs6000/rs6000.c (output_toc): Likewise. From-SVN: r33898
2000-05-14rs6000.c (output_cbranch): Don't output prediction codes when old mnemonics ↵Geoff Keating1-4/+5
are in use. * rs6000.c (output_cbranch): Don't output prediction codes when old mnemonics are in use. Print register names for cc registers when requested. From-SVN: r33897
2000-05-12Add movdi pattern to FR30 port.Nick Clifton4-13/+243
From-SVN: r33885
2000-05-12alpha.c (struct shadow_summary): Define bitfields as type unsigned int.Richard Henderson1-3/+3
* config/alpha/alpha.c (struct shadow_summary): Define bitfields as type unsigned int. From-SVN: r33884
2000-05-13t-avr: Added definition of FLOAT while generates fp-bit.cDenis Chertykov2-2/+3
* config/avr/t-avr: Added definition of FLOAT while generates fp-bit.c * config/avr/avr.md: `NEXT_INSN (insn)' substituted to `insn' in peepholes for tst+jump = sbrs/sbrc optimization. From-SVN: r33883
2000-05-12mn10300.h (PREFERRED_DEBUGGING_TYPE): Redefine as DWARF2_DEBUG.Alexandre Oliva1-2/+8
* config/mn10300/mn10300.h (PREFERRED_DEBUGGING_TYPE): Redefine as DWARF2_DEBUG. (DWARF2_ASM_LINE_DEBUG_INFO): Define. (ASM_OUTPUT_DWARF2_ADDR_CONST): Define. From-SVN: r33869
2000-05-11mn10300.c (print_operand): Print FP constants in hexadecimal.Alexandre Oliva2-6/+6
* config/mn10300/mn10300.c (print_operand): Print FP constants in hexadecimal. * config/mn10300/mn10300.md (movsf, movdf): Use the `F' constraint for FP values. From-SVN: r33863
2000-05-11avr-protos.c (jump_over_one_insn_p): New declaration.Denis Chertykov3-1/+67
* config/avr/avr-protos.c (jump_over_one_insn_p): New declaration. * config/avr/avr.c (jump_over_one_insn_p): New function. * config/avr/avr.md: New peepholes added. Output test and conditional jump to "sbrc" or "sbrs" command. From-SVN: r33855
2000-05-11* i386/xm-djgpp.h (XREF_FILE_NAME): Add mising brace.Laurynas Biveinis1-1/+1
From-SVN: r33838
2000-05-10Add performance related explanatory comment.Jim Wilson1-0/+15
* config/ia64/ia64.md (insv): Add comment. From-SVN: r33836
2000-05-09avr-protos.h (extra_constraint): change a type of second argument from char ↵Denis Chertykov5-149/+261
to int to avoid warnings. * config/avr/avr-protos.h (extra_constraint): change a type of second argument from char to int to avoid warnings. (asm_output_byte): Likewise. * config/avr/avr.c (MAX_LD_OFFSET) New macro. (initial_elimination_offset): Handle elimination from FRAME_POINTER_REGNUM to STACK_POINTER_REGNUM. (legitimate_address_p): Use MAX_LD_OFFSET. (legitimize_address): Likewise. (out_movqi_r_mr): Likewise. (out_movhi_r_mr): Likewise, use `fatal_insn' instead of `fatal'. (out_movsi_r_mr): Use MAX_LD_OFFSET. (out_movsi_mr_r): Likewise. (out_movqi_mr_r): Likewise. (out_movhi_mr_r): Likewise. (notice_update_cc): Correct CC for the ashrqi3 with the shift count as CONST_INT != 6. (ashlqi3_out): Coding style modifications. Run `fatal_insn' if shift count is a CONSTANT_P, but not a CONST_INT. (ashlhi3_out): Coding style modifications. (ashlsi3_out): Likewise. (ashrhi3_out): Likewise. (ashrsi3_out): Likewise. (lshrhi3_out): Likewise. (lshrsi3_out): Likewise. (ashrqi3_out): Generate shift for any known constant count without scratch register. Run `fatal_insn' if shift count is a CONSTANT_P, but not a CONST_INT. (lshrqi3_out): Coding style modifications. Run `fatal_insn' if shift count is a CONSTANT_P, but not a CONST_INT. (extra_constraint): change a type of second argument from char to int to avoid warnings. (asm_output_byte): Likewise. (asm_file_end): Output size generated commands count as a hex number too. * config/avr/avr.h (RETURN_ADDR_RTX): New macro. * config/avr/avr.md (addhi3): Fragment commented by &&0 is removed. (ashlqi3): Values of "length" attribute changed. Shift count uses constraints 'n' instead of 'i'. (ashrqi3): Likewise. Values of "cc" attribute changed. Generate shifts without clobber register. (lshrqi3): Shift count uses constraints 'n' instead of 'i'. (call_insn): Correct test for which_alternative == 1 (was 0). (call_value_insn): Likewise. * config/avr/t-avr: Remove definition of FLOAT while generates fp-bit.c From-SVN: r33802
2000-05-08ia64-protos.h (ia64_expand_prediction): Declare.Richard Henderson3-100/+167
* config/ia64/ia64-protos.h (ia64_expand_prediction): Declare. * config/ia64/ia64.c (ia64_print_operand_address): Handle 'j'. (ia64_expand_prediction): New. (emit_insn_group_barriers): Don't look at notes. Emit barriers as needed after calls. (ia64_epilogue_uses): Mark b0 used. * config/ia64/ia64.md (beq_true, beq_false): Remove. (bne_true, bne_false): Remove. (eq_return, eq_not_return, ne_return, ne_not_return): Remove. (br_true, br_false): New. Use predicate_operator and ia64_expand_prediction. (return_true, return_false): Likewise. (call_internal): Use ia64_expand_prediction. Don't emit stop bit. (call_internal1, call_value_internal): Likewise. (call_value_internal1, call_multiple_values_internal1): Likewise. From-SVN: r33793
2000-05-08* config/ia64/ia64.md (extendsfdf2): Split only after reload.Richard Henderson1-1/+1
From-SVN: r33789
2000-05-08* config/ia64/ia64.c (ia64_direct_return): Require frame size zero.Richard Henderson1-1/+1
From-SVN: r33788
2000-05-08Fix typo spotted by grahams.Jim Wilson1-1/+1
* config/ia64/ia64.h (RETURN_ADDR_RTX): Use COUNT not count. From-SVN: r33782
2000-05-08ia64.md (extendsfdf2): Split the nop case out of existance.Richard Henderson1-6/+10
* config/ia64/ia64.md (extendsfdf2): Split the nop case out of existance. From-SVN: r33779
2000-05-08* config/ia64/ia64.h (predicate_operator): Declare.Richard Henderson1-0/+1
From-SVN: r33778
2000-05-08ia64.c (ia64_encode_section_info): Exit early for global register variables...Richard Henderson1-40/+46
* config/ia64/ia64.c (ia64_encode_section_info): Exit early for global register variables; don't special case __[CD]TOR_LIST__; mind ggc_p for string allocation. From-SVN: r33776
2000-05-08Fix comment describing ELIMINABLE_REGSNick Clifton1-4/+5
From-SVN: r33769
2000-05-08linux.h: Remove undefines which disabled .ctor/.dtor support.Andreas Jaeger1-28/+0
2000-05-08 Andreas Jaeger <aj@suse.de> * config/mips/linux.h: Remove undefines which disabled .ctor/.dtor support. From-SVN: r33763
2000-05-07rtl.def (COND_EXEC): Clarify.John Wehle1-8/+8
* rtl.def (COND_EXEC): Clarify. * i386.md (extendsidi2): Clobber (reg:CC 17) in the same fashion as zero_extendsidi2. From-SVN: r33756
2000-05-06ia64.c (predicate_operator): New.Richard Henderson3-178/+334
* config/ia64/ia64.c (predicate_operator): New. (ia64_print_operand): Handle 'J'. (rtx_needs_barrier): Handle COND_EXEC. * config/ia64/ia64.h (BRANCH_COST): Define. (PREDICATE_CODES): Update. * config/ia64/ia64.md: Docuement used unspec values. (attr predicable): New. (movxf, movxf_internal): New. (extendsfdf2): Don't comment out nop. (floatdidf2): Remove. (truncxfsf2, truncxfdf2, floatdixf2): New. (abssi2, absdi2): Put the neg in the "true" slot. (conditional branch instructions): Mark not predicable. (cmov*_internal): Use predicate_operator. Split to cond_exec. (abs*_internal): Likewise. (alloc, set_bsp): Mark not predicable. (barrier, insn_group_barrier, flush_cache): Likewise. (define_cond_exec): New. From-SVN: r33754
2000-05-06ia64.c (sdata_symbolic_operand): Mark unused args.Richard Henderson1-22/+22
* config/ia64/ia64.c (sdata_symbolic_operand): Mark unused args. (symbolic_operand, function_operand, setjmp_operand): Likewise. (shift_count_operand, shift_32bit_count_operand): Likewise. (shladd_operand, fetchadd_operand, ia64_function_prologue): Likewise. (ia64_function_epilogue, ia64_setup_incoming_varargs): Likewise. (ia64_function_arg_partial_nregs, ia64_function_value): Likewise. (ia64_print_operand_address, ia64_secondary_reload_class): Likewise. (ia64_expand_builtin): Likewise. (call_multiple_values_operation): Make dest_regno unsigned. From-SVN: r33753
2000-05-06c-decl.c: Include "tm_p.h".Richard Henderson3-128/+135
* c-decl.c: Include "tm_p.h". * config/ia64/ia64-protos.h: Rearrange decls to reduce ifdef madness. (fetchadd_operand, ia64_expand_fetch_and_op): Declare. (ia64_expand_op_and_fetch): Declare. * config/ia64/ia64.c: Include "toplev.h". Kill trailing whitespace. (setjmp_operand): Constify variables for XSTR. (ia64_encode_section_info): Likewise. (ia64_print_operand): Use %d for exact_log2; cast 32-bit printed values to int. (ia64_asm_output_external): Constify name. (process_set): Use HOST_WIDE_INT_PRINT_DEC for frame size. (process_for_unwind_directive): Provide switch default. (ia64_expand_compare_and_swap): Remove unused variables. (ia64_expand_builtin): Likewise. * config/ia64/ia64.h (ASM_OUTPUT_BYTE): Mask and cast value to int for printing. From-SVN: r33752
2000-05-06Use new tail-calling mechanism on ARM.Richard Earnshaw4-316/+143
* arm.md (sibcall, sibcall_value): New expands. (sibcall_insn, sibcall_value_insn, sibcall_epilogue): New insns. (tailcalling peepholes): Delete. (push_multi): Simplify. * arm.c (lr_save_eliminated): Delete definition. (pattern_really_clobbers_lr, function_really_clobbers_lr): Delete. (output_return_instruction): Remove checks on lr_save_eliminated. (output_arm_prologue): Remove old tail-calling code. (arm_output_epilogue): New parameter, really_return. All callers changed. Handle tail-calling epilogues. * arm.h (lr_save_eliminated): Delete declaration. (frame_pointer_needed): Delete declaration. * arm-protos.h (arm_output_epilogue): Adjust prototype. * arm.md (is_thumb): Examine symbol thumb_code, not expression TARGET_ARM. * arm.c (thumb_code): Define it. (arm_override_options): Set it. * arm.h (thumb_code): Declare it. From-SVN: r33731
2000-05-06* arm-protos.h (arm_dllexport_name_p, arm_dllimport_name_p): Constify.Richard Earnshaw1-2/+2
From-SVN: r33729
2000-05-06* arm.h (SPECIAL_MODE_PREDICATES): Define.Richard Earnshaw1-0/+7
From-SVN: r33724
2000-05-06arm.c (arm_gen_load_multiple, [...]): Don't add bogus clobber to insns.Richard Earnshaw2-31/+13
* arm.c (arm_gen_load_multiple, arm_gen_store_mulitple): Don't add bogus clobber to insns. (load_multiple_operation, store_mulitple_operation): Don't check for it. * arm.md (ldmsi_postinc, stmsi_postinc): Adjust accordingly. * arm.md (and_scc, ior_scc): Add missing mode. * arm.md (call_value_symbol): Remove predicate from op2. From-SVN: r33723
2000-05-06xcoffout.c (xcoff_current_include_file, [...]): Constify char *.David Edelsohn3-4/+8
* xcoffout.c (xcoff_current_include_file, xcoff_current_function_file, xcoff_lastfile): Constify char *. (xcoffout_source_file, xcoffout_source_line): Make filename 'const char *'. (xcoffout_declare_function): Make name 'const char *'. (xcoffout_end_epilogue): Make fname 'const char *' * xcoffout.h (xcoff_current_include_file, xcoff_lastfile, xcoffout_declare_function, xcoffout_source_line): Match above. * aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -mpowerpc64 without -maix64 is error. * rs6000.c (print_operand): Fix lossage typo. (output_cbranch): Remove "cr" decoration for now. * rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Make alias 'const char *'. From-SVN: r33720
2000-05-06avr.c (out_shift_with_cnt): Bugfix for shift by constant count.Denis Chertykov1-1/+1
* config/avr/avr.c (out_shift_with_cnt): Bugfix for shift by constant count. From-SVN: r33719
2000-05-05* pa.h (FUNCTION_ARG_ADVANCE): Warning removal.Rodney Brown1-4/+3
From-SVN: r33713
2000-05-05openbsd.h (LINK_SPEC): pass correct flags to ld to support -shared, on ↵Marc Espie1-1/+1
platforms with dynamic libraries. * config/openbsd.h (LINK_SPEC): pass correct flags to ld to support -shared, on platforms with dynamic libraries. From-SVN: r33711
2000-05-05avr.c (out_shift_with_cnt): Genetare a more optimal shift cycle for unknown ↵Denis Chertykov1-48/+28
shift count. * config/avr/avr.c (out_shift_with_cnt): Genetare a more optimal shift cycle for unknown shift count. Also generates dec + brpl. (ashlqi3_out): Don't generate dec + brpl which now generates by `out_shift_with_cnt'. (ashlhi3_out): Likewise. (ashlsi3_out): Likewise. (ashrqi3_out): Likewise. (ashrhi3_out): Likewise. (ashrsi3_out): Likewise. (lshrqi3_out): Likewise. (lshrhi3_out): Likewise. (lshrsi3_out): Likewise. From-SVN: r33700
2000-05-05rs6000.h (PREDICATE_CODES): Add floating-point comparison codes to ↵Geoff Keating1-1/+4
branch_comparison_operator. * config/rs6000/rs6000.h (PREDICATE_CODES): Add floating-point comparison codes to branch_comparison_operator. From-SVN: r33692
2000-05-04rs6000-protos.h: Add output_cbranch.Geoff Keating3-58/+135
* config/rs6000/rs6000-protos.h: Add output_cbranch. * config/rs6000/rs6000.c (ccr_bit_negated_p): Delete. (print_operand): Delete %t and %T codes. (output_cbranch): New function. Support branch prediction. * config/rs6000/rs6000.md: Use output_cbranch for conditional branches and returns. From-SVN: r33686
2000-05-04* config/alpha/t-alpha (LIB2FUNCS_EXTRA): Use qrrnd.asm in place.Richard Henderson1-6/+2
From-SVN: r33682
2000-05-04cygwin.h (CPP_PREDEFINES): Don't define __STDC__.Mumit Khan3-14/+14
2000-05-04 Mumit Khan <khan@xraylith.wisc.edu> * i386/cygwin.h (CPP_PREDEFINES): Don't define __STDC__. Move attribute macros from here ... (CPP_SPEC): to here. * i386/mingw32.h (CPP_PREDEFINES): Likewise. (CPP_SPEC): Likewise. * i386/crtdll.h (CPP_PREDEFINES): Delete attribute macros. From-SVN: r33677
2000-05-04rtl.h (MEM_COPY_ATTRIBUTES): Also copy RTX_UNCHANGING_P and MEM_ALIAS_SET.Richard Kenner5-20/+1
* rtl.h (MEM_COPY_ATTRIBUTES): Also copy RTX_UNCHANGING_P and MEM_ALIAS_SET. * alias.c (canon_rtx): Don't copy RTX_UNCHANGING_P or MEM_ALIAS_SET when calling MEM_COPY_ATTRIBUTES. * emit-rtl.c (operand_subword, change_address): Likewise. * explow.c (stabilize): Likewise. * expr.c (protect_from_queue, emit_move_insn_1): Likewise. * integrate.c (copy_rtx_and_substitute): Likewise. * combine.c (combine_simplify_rtx): Don't copy RTX_UNCHANGING_P when calling MEM_COPY_ATTRIBUTES. (make_extraction, simplify_shift_const, gen_lowpart_for_combine): Likewise. * cse.c (gen_lowpart_if_possible): Likewise. * function.c (fixup_var_refs_1, purge_addressof_1): Likewise. * optabs.c (gen_move_insn): Likewise. * recog.c (validate_replace_rtx_1): Likewise. * simplify-rtx.c (add_mem_for_addr): Likewise. * stmt.c (expand_anon_union_decl): Likewise. * config/arm/arm.md: Likewise. * config/h8300/h7300.c (fix_bit_operand): Likewise. * config/m88k/m88k.c (legitimize_address, block_move_loop): Likewise. (block_move_no_loop, block_move_sequence): Likewise. * config/rs6000/rs6000.c (expand_block_move_mem): Likewise. * config/alpha/alpha.c (get_aligned_mem): Likewise. Clear MEM_ALIAS_SET. * final.c (alter_subreg): Don't copy MEM_ALIAS_SET when calling MEM_COPY_ATTRIBUTES. From-SVN: r33665
2000-05-03* config/i386/i386.md (lshrqi2_cmpno): Use q not r in constraint.Jason R Thorpe1-1/+1
From-SVN: r33645
2000-05-03avr-protos.h (test_hard_reg_class): Declared.Denis Chertykov3-74/+36
* config/avr/avr-protos.h (test_hard_reg_class): Declared. * config/avr/avr.c (ashrhi3_out): optimized shift by 15. (lshrhi3_out): Likewise. (ashrsi3_out): bugfix in shift by 8. (test_hard_reg_class): New function. * config/avr/avr.md: Bugfix inside conditions in peepholes. (ashlhi3): removed define_expand of this pattern. (*ashlhi3_insn): renamed to ashlhi3. (ashlsi3): removed define_expand of this pattern. (*ashlsi3_insn): renamed to ashlsi3. (ashrqi3): removed define_expand of this pattern. (*ashrqi3_insn): renamed to ashrqi3. (ashrhi3): removed define_expand of this pattern. (*ashrhi3_insn): renamed to ashrhi3. (ashrsi3): removed define_expand of this pattern. (*ashrsi3_insn): renamed to ashrsi3. (lshrhi3): removed define_expand of this pattern. (*lshrhi3_insn): renamed to lshrhi3. (lshrsi3): removed define_expand of this pattern. (*lshrsi3_insn): renamed to lshrsi3. From-SVN: r33640
2000-05-03Replace inclusion of <stdio.h> with "system.h"Rodney Brown1-1/+1
From-SVN: r33639
2000-05-03Patches from David Mosberger, and a patch to make bootstrap work.Jim Wilson5-17/+118
* config/ia64/ia64.c (ia64_encode_section_info): Add check for TREE_ASM_WRITTEN. * config/ia64/ia64.c (ia64_override_options): Force -mconstant-gp if -mauto-pic is on. ... From-SVN: r33638
2000-05-03change MIPS varargs ABI in config/mips/mips.cDonald Lindsay1-138/+323
From-SVN: r33621
2000-05-02ia64.c (ia64_encode_section_info): Handle the case where this function is ↵Andrew Haley2-1/+27
called for the second time on a decl... 2000-05-02 Andrew Haley <aph@cygnus.com> * config/ia64/ia64.c (ia64_encode_section_info): Handle the case where this function is called for the second time on a decl that has had its section info changed in such a way as to move it out of small data/bss. * config/ia64/ia64.h (REDO_SECTION_INFO_P): New definition. From-SVN: r33609
2000-05-01Change dynamic linker name to conform to current glibc. From Jakub Jelinek.Jakub Jelinek1-1/+1
* config/ia64/linux.h (LINK_SPEC): Use /lib/ld-linux-ia64.so.1 as the dynamic linker. From-SVN: r33584
2000-05-01Update copyrights.Jeff Law12-12/+12
From-SVN: r33579
2000-05-01Update copyright.Jeff Law1-1/+1
From-SVN: r33578