Tobias Burnus
f17facacf2
re PR fortran/29624 (Fortran 2003: Support intent for pointers)
...
fortran/
2007-01-05 Tobias Burnus <burnus@net-b.de>
PR fortran/29624
* interface.c (compare_parameter_intent): New function.
(check_intents): Support pointer intents.
* symbol.c (check_conflict): Support pointer intents,
better conflict_std message.
* expr.c (gfc_check_assign,gfc_check_pointer_assign):
Support pointer intents.
* resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
Support pointer intents.
testsuite/
2006-01-05 Tobias Burnus <burnus@net-b.de>
PR fortran/29624
* gfortran.dg/alloc_alloc_expr_1.f90: Add check for
invalid deallocate.
* gfortran.dg/allocatable_dummy_2.f90: Update dg-error.
* gfortran.dg/protected_4.f90: Add pointer intent check.
* gfortran.dg/protected_6.f90: Add pointer intent check.
* gfortran.dg/pointer_intent_1.f90: New test.
* gfortran.dg/pointer_intent_2.f90: New test.
* gfortran.dg/pointer_intent_3.f90: New test.
From-SVN: r120472
2007-01-05 10:08:37 +01:00
Gerald Pfeifer
150f069c1c
crontab: Spread snapshots more evenly throughout the week, and in "ascending" order.
...
* crontab: Spread snapshots more evenly throughout the week, and
in "ascending" order. Build all at the same time of the day.
From-SVN: r120471
2007-01-05 08:34:18 +00:00
Ian Lance Taylor
dfd0a3de8f
* c-common.c (check_function_nonnull): Whitespace fix.
...
From-SVN: r120470
2007-01-05 06:16:56 +00:00
Jan Hubicka
59e504989c
tree-optimize.c (execute_fixup_cfg): Correct previously mistakely comitted older version of patch.
...
* tree-optimize.c (execute_fixup_cfg): Correct previously mistakely
comitted older version of patch.
(pass_fixup_cfg): Add TODOs to verify flow and statements, dump
function, celanup cfg and collect garbage.
From-SVN: r120469
2007-01-05 02:00:56 +00:00
Brooks Moses
c79441520f
re PR fortran/30371 (kill suboutine accepts (invalid) array arguments.)
...
PR 30371
* check.c (gfc_check_kill_sub): Add checks for non-scalar
arguments.
From-SVN: r120468
2007-01-04 17:40:06 -08:00
Brooks Moses
ea8dda63be
intrinsic.texi: Minor cleanup, reflowing overlong paragraphs, and correcting whitespace.
...
* intrinsic.texi: Minor cleanup, reflowing overlong
paragraphs, and correcting whitespace.
From-SVN: r120467
2007-01-04 17:26:27 -08:00
Brooks Moses
bc5b7642eb
intrinsic.texi (LBOUND): Add documentation.
...
* intrinsic.texi (LBOUND): Add documentation.
(LGE): Add documentation.
(LGT): Add documentation.
(LINK): Add documentation.
(LLE): Add documentation.
(LLT): Add documentation.
(LNBLNK): Add documentation.
(UBOUND): Add documentation.
(UNLINK): Add documentation.
From-SVN: r120466
2007-01-04 16:42:04 -08:00
Mike Stump
a87948f7fb
Makefile.in (mostlyclean): Don't remove libgcc anymore.
...
* Makefile.in (mostlyclean): Don't remove libgcc anymore.
(clean): Likewise.
From-SVN: r120465
2007-01-05 00:38:22 +00:00
GCC Administrator
081b57d3c1
Daily bump.
...
From-SVN: r120463
2007-01-05 00:17:36 +00:00
Ben Elliston
46bbeb652c
Revert revision 120457.
...
From-SVN: r120458
2007-01-05 11:03:35 +11:00
Ben Elliston
93c5d31c00
strstream.cc (strstreambuf::seekoff): Add parentheses around truth expression to eliminate a new warning from g++.
...
* src/strstream.cc (strstreambuf::seekoff): Add parentheses around
truth expression to eliminate a new warning from g++.
From-SVN: r120457
2007-01-05 10:43:14 +11:00
Brooks Moses
b0088af7b1
* Makefile.in: Added .PHONY entry for documentation targets.
...
From-SVN: r120456
2007-01-04 15:43:11 -08:00
Brooks Moses
e0a9456adf
* Makefile.in: Add empty info, html, dvi, pdf targets.
...
From-SVN: r120455
2007-01-04 15:27:33 -08:00
Eric Christopher
e4b6bec2f1
libgcc2.c (__bswapsi2): Use SItype.
...
2007-01-04 Eric Christopher <echristo@apple.com>
* libgcc2.c (__bswapsi2): Use SItype.
(__bswapdi2): Use DItype.
* libgcc2.h: Update for above.
From-SVN: r120454
2007-01-04 23:16:34 +00:00
Paul Brook
d6c397b0ff
arm.md (arm_mulsi3, [...]): Make conditional on !arm_arch6.
...
2007-01-04 Paul Brook <paul@codesourcery.com>
* config/arm/arm.md (arm_mulsi3, thumb_mulsi3, mulsi3_compare0,
mulsi_compare0_scratch, mulsi3addsi, mulsi3addsi_compare0,
mulsi3addsi_compare0_scratch, mulsidi3adddi, mulsidi3,
umulsidi3, umulsidi3adddi, smulsi3_highpart,
umulsi3_highpart): Make conditional on !arm_arch6.
(arm_mulsi3_v6, thumb_mulsi3_v6, mulsi3_compare0_v6,
mulsi_compare0_scratch_v6, mulsi3addsi_v6, mulsi3addsi_compare0_v6,
mulsi3addsi_compare0_scratch_v6, mulsidi3adddi_v6, mulsidi3_v6,
umulsidi3_v6, umulsidi3adddi_v6, smulsi3_highpart_v6,
umulsi3_highpart_v6): New insns.
From-SVN: r120453
2007-01-04 23:13:55 +00:00
Brooks Moses
6d413586e0
intrinsic.texi (IAND): Clarify argument specifications.
...
* intrinsic.texi (IAND): Clarify argument specifications.
(IBCLR): Add documentation.
(IBITS): Add documentation.
(IBSET): Add documentation.
(IEOR): Add documentation.
(IERRNO): Add documentation.
(INDEX): Add documentation.
(IOR): Add documentation.
(ISHFT): Add documentation.
(ISHFTC): Add documentation.
(KILL): Add documentation.
(LEN_TRIM): Add documentation.
From-SVN: r120452
2007-01-04 15:00:41 -08:00
Roger Sayle
bd7e4636d9
fold-const.c (fold_convert): When casting an expression to void...
...
* fold-const.c (fold_convert): When casting an expression to void,
fold_ignored_result may discover a GIMPLE_MODIFY_STMT which doesn't
have a type. Instead of attempting to build a NOP_EXPR, return
these "special" trees directly.
From-SVN: r120451
2007-01-04 23:00:00 +00:00
Mike Stump
7fd453b4a2
Makefile.in (MAKEINFO): Remove.
...
* Makefile.in (MAKEINFO): Remove.
(PERL): Likewise.
From-SVN: r120450
2007-01-04 21:54:45 +00:00
Paolo Bonzini
14e8fc8b03
configure.ac: Add GCC_TOPLEV_SUBDIRS.
...
2007-01-04 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Add GCC_TOPLEV_SUBDIRS.
* configure: Regenerate.
* Makefile.in (host_subdir): Substitute it.
(gcc_objdir): Use it.
From-SVN: r120449
2007-01-04 18:12:08 +00:00
Brooks Moses
3ab7b3def2
re PR fortran/30235 ([4.1 only] missing alternate return argument with explicit interface causes segfault)
...
fortran/
PR 30235
* interface.c (compare_actual_formal): check for
alternate returns when iterating over non-present
arguments.
testsuite/
PR 30235
* gfortran.dg/altreturn_2.f90: new test.
From-SVN: r120447
2007-01-04 09:30:37 -08:00
Brooks Moses
5f9a37a648
* invoke.texi: Update manpage copyright to include 2007.
...
From-SVN: r120445
2007-01-04 09:09:34 -08:00
Brooks Moses
2553e4e073
gfortran.texi: Update copyright to include 2007.
...
* gfortran.texi: Update copyright to include 2007.
* intrinsic.texi: Update copyright to include 2007.
* invoke.texi: Update copyright to include 2007.
From-SVN: r120444
2007-01-04 08:52:36 -08:00
Daniel Jacobowitz
1555beba2f
* config.host (ia64*-*-linux*): Set tmake_file.
...
From-SVN: r120443
2007-01-04 16:52:02 +00:00
Joseph Myers
762c919f44
rs6000.c (rs6000_rtx_costs): Make adjustment for MULT inside MINUS as either argument.
...
* config/rs6000/rs6000.c (rs6000_rtx_costs): Make adjustment for
MULT inside MINUS as either argument. Use rs6000_cost->dmul -
rs6000_cost->fp not 0 as adjustment for outer NEG.
From-SVN: r120442
2007-01-04 16:36:57 +00:00
Tom Tromey
705e2d28a1
re PR preprocessor/28165 (_Pragma GCC system_header broken)
...
libcpp
PR preprocessor/28165:
* internal.h (cpp_in_primary_file): New function.
* directives.c (do_include_next): Use cpp_in_primary_file.
(do_pragma_once): Likewise.
(do_pragma_system_header): Likewise.
gcc/testsuite
PR preprocessor/28165:
* gcc.dg/cpp/pr28165.c: New file.
From-SVN: r120441
2007-01-04 15:32:26 +00:00
Daniel Jacobowitz
79e6eaeb8f
* Makefile.in (version): Define.
...
From-SVN: r120440
2007-01-04 14:20:15 +00:00
Paolo Bonzini
3dd7172662
commit changelog entry for last commit
...
From-SVN: r120439
2007-01-04 14:10:50 +00:00
Jan Hubicka
3a40c18a68
cgraph.c (cgraph_release_function_body): New function.
...
* cgraph.c (cgraph_release_function_body): New function.
(cgraph_remove_node): Use it.
* cgraph.h (cgraph_release_function_body): Declare.
* cgraphunit.c (cgraph_expand_function): Use it.
* ipa.c (cgraph_remove_unreahchable_nodes): Use it.
* tree-ssa.c (delete_tree_ssa): Allow to be called before aliasing
is initialized and while compilation of other function is running.
* tree-optimize.c (execute_free_cfg_annotations): Move code to clear
statement CFG annotations from here to ...
* tree-cfg.c (delete_tree_cfg_annotations): ... here.
From-SVN: r120437
2007-01-04 11:30:10 +00:00
Zdenek Dvorak
b06e8639fa
cfgloop.h (enum li_flags): Make the constants powers of two.
...
* cfgloop.h (enum li_flags): Make the constants powers of two.
From-SVN: r120433
2007-01-04 09:53:29 +00:00
Paolo Bonzini
88fceb6820
configure.in: Use DEV-PHASE to detect the default for --enable-werror.
...
2007-01-04 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Use DEV-PHASE to detect the default for --enable-werror.
* configure: Regenerate.
From-SVN: r120432
2007-01-04 09:10:51 +00:00
Tobias Burnus
e01f74e08e
re PR fortran/30276 (gfortran include problem)
...
2007-01-02 Tobias Burnus <burnus@net-b.de>
Jakub Jelinek <jakub@redhat.com>
PR fortran/30276
* scanner.c (open_included_file): Revert patch.
(gfc_open_included_file): Support absolute pathnames.
(gfc_open_intrinsic_module): Support absolute pathnames.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r120431
2007-01-04 09:57:36 +01:00
Jan Hubicka
b8a00a4dcb
tree-inline.c (copy_bb): Insert new statements to statements_to_fold set.
...
* tree-inline.c (copy_bb): Insert new statements to statements_to_fold
set.
(fold_marked_statements): New function.
(optimize_inline_calls, tree_function_versioning): Fold new statements.
* tree-inline.h (copy_body_data): Add statemetns_to_fold.
From-SVN: r120430
2007-01-04 08:56:05 +00:00
Daniel Jacobowitz
fa9585134f
Makefile.def (target_modules): Add libgcc.
...
./ * Makefile.def (target_modules): Add libgcc.
(lang_env_dependencies): Remove default items. Use no_c and no_gcc.
* Makefile.tpl (clean-target-libgcc): Delete.
(configure-target-[+module+]): Emit --disable-bootstrap dependencies
on gcc even for bootstrapped modules. Rewrite handling of
lang_env_dependencies to loop over target_modules.
* configure.in (target_libraries): Add target-libgcc.
* Makefile.in, configure: Regenerated.
gcc/
* config.gcc: Mention libgcc/config.host.
* Makefile.in: Update comments mentioning libgcc.
(LIBGCC, INSTALL_LIBGCC, GCC_PARTS, mklibgcc): Delete.
(all.cross, start.encap, rest.encap, rest.cross): Update
dependencies for libgcc move.
(libgcc.mk, LIBGCC_DEPS, libgcov.a, libgcc.a, stmp-multilib)
(clean-target, clean-target-libgcc): Delete.
(srcdirify, GCC_EXTRA_PARTS): New macros.
(libgcc-support, libgcc.mvars): New rules.
(distclean): Remove mention of mklibgcc.
(install): Don't reference INSTALL_LIBGCC.
(install-common): Don't reference EXTRA_PARTS.
(install-libgcc, install-multilib): Delete rules.
* mklibgcc.in: Delete file.
* doc/configfiles.texi: Don't mention mklibgcc.
* config/i386/t-darwin (SHLIB_VERPFX): Delete (moved to libgcc).
* config/i386/t-darwin64 (SHLIB_VERPFX): Likewise.
* config/rs6000/t-darwin (SHLIB_VERPFX): Likewise.
* config/rs6000/t-ppccomm (TARGET_LIBGCC2_CFLAGS, SHLIB_MAPFILES)
(mklibgcc, ldblspecs): Likewise.
* config/i386/t-nwld (libgcc.def, libc.def, libpcre.def)
(posixpre.def): Use $(T).
(SHLIB_EXT, SHLIB_NAME, SHLIB_SLIBDIR_QUAL, SHLIB_DEF, SHLIB_MAP)
(SHLIB_SRC, SHLIB_INSTALL): Delete.
(SHLIB_LINK): Make dummy.
* config/t-slibgcc-darwin: Delete contents except for dummy SHLIB_LINK.
* config/frv/t-linux (EXTRA_MULTILIB_PARTS): Clear.
* config/alpha/t-crtfm: Use $(T) in rules for EXTRA_PARTS.
* config/alpha/t-vms, config/alpha/t-vms64, config/fr30/t-fr30,
config/i386/t-rtems-i386, config/ia64/t-ia64, config/rs6000/t-beos,
config/rs6000/t-newas, config/sparc/t-elf: Likewise.
* configure.ac (all_outputs): Remove mklibgcc.
* configure: Regenerated.
libgcc/
* Makefile.in, config/i386/t-darwin, config/i386/t-darwin64,
config/i386/t-nwld, config/rs6000/t-darwin, config/rs6000/t-ldbl128,
config/i386/t-crtfm, config/alpha/t-crtfm, config/ia64/t-ia64,
config/sparc/t-crtfm, config/t-slibgcc-darwin,
config/rs6000/t-ppccomm, config.host, configure.ac, empty.mk,
shared-object.mk, siditi-object.mk, static-object.mk: New files.
* configure: Generated.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r120429
2007-01-04 04:22:37 +00:00
Brooks Moses
de43c613ab
* gfortran.texi (GNU Fortran and GCC): Rewrite
...
From-SVN: r120428
2007-01-03 18:21:38 -08:00
Brooks Moses
e6b38f67a1
gfortran.texi (Introduction): Lower "Part I...
...
* gfortran.texi (Introduction): Lower "Part I:
Introduction" to a chapter, renumber Parts II and III to
Parts I and II.
* intrinsic.texi (Introduction): Rename to "Introduction
to Intrinsics" to avoid conflict with the new chapter.
From-SVN: r120427
2007-01-03 18:11:05 -08:00
Brooks Moses
e1b4184c7b
* intrinsic.texi (Introduction): Rewrite first paragraph.
...
From-SVN: r120426
2007-01-03 17:37:27 -08:00
Josh Conner
7816b87eb1
re PR middle-end/29683 (Arg split between stack/regs can cause stack corruption)
...
2007-03-01 Josh Conner <jconner@apple.com>
PR middle-end/29683
* calls.c (compute_argument_addresses): Set stack and stack_slot
for partial args, too.
(store_one_arg): Use locate.size.constant for the size when
generating a save_area.
2007-03-01 Josh Conner <jconner@apple.com>
PR middle-end/29683
* gcc.dg/pr29683.c: New.
From-SVN: r120425
2007-01-04 01:37:15 +00:00
Brooks Moses
4e8b35902b
invoke.texi (OpenMP): Added index entry.
...
* invoke.texi (OpenMP): Added index entry.
* gfortran.texi (title page): Removed erroneous '*'.
From-SVN: r120424
2007-01-03 17:29:08 -08:00
Robert Kennedy
611021e16c
tree-cfg.c (tree_merge_blocks): Release SSA_NAME phi results whose definitions are deleted due to basic block...
...
* tree-cfg.c (tree_merge_blocks): Release SSA_NAME phi results
whose definitions are deleted due to basic block merging.
From-SVN: r120423
2007-01-04 01:20:08 +00:00
Brooks Moses
11de78ffd1
gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units to description.
...
* gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
to description.
(Extensions): Miscellaneous minor rewriting and copyediting.
(BOZ-literal constants): Renamed from Hexadecimal constants.
(Hollerith constants support): Added explanation and
suggestions for standard-conforming modern equivalents.
From-SVN: r120422
2007-01-03 17:02:40 -08:00
Brooks Moses
4ba96c0283
intrinsic.texi: Improvements to index entries; change @findex entries to @cindex entries.
...
* intrinsic.texi: Improvements to index entries; change
@findex entries to @cindex entries.
* invoke.texi: Standardize and improve index entries.
* gfortran.texi: Fix @code in one index entry.
From-SVN: r120421
2007-01-03 16:39:15 -08:00
Brooks Moses
40746dccd1
invoke.texi: Change @code-type macros to appropriate variants (@command, @option, etc.)
...
* invoke.texi: Change @code-type macros to appropriate
variants (@command, @option, etc.)
* gfortran.texi: Same.
From-SVN: r120420
2007-01-03 16:19:36 -08:00
GCC Administrator
ad89ea97c7
Daily bump.
...
From-SVN: r120418
2007-01-04 00:17:33 +00:00
Paul Brook
a15908a410
re PR target/16634 (arm-elf-gcc problems when generating code for __attribute__ ((interrupt ("IRQ"))))
...
2007-01-03 Paul Brook <paul@codesourcery.com>
PR target/16634
gcc/
* config/arm/arm.c (output_return_instruction): Pop PC in interrupt
functions.
(use_return_insn): Return 0 for Thumb interrupt functions.
(print_multi_reg): Add rfe argument for IRQ returns.
(arm_output_epilogue): Pop interrupt return address directly into PC.
(arm_expand_prologue): Only adjust IRQ return address in Arm mode.
From-SVN: r120413
2007-01-04 00:09:48 +00:00
Jakub Jelinek
019df41c96
re PR c++/28217 (ICE in tree_int_cst_sgn)
...
PR c++/28217
* g++.dg/pch/template-1.C: New test.
* g++.dg/pch/template-1.Hs: New file.
From-SVN: r120410
2007-01-04 00:53:18 +01:00
Brooks Moses
0c5a1cbc07
* intrinsic.texi: Various minor cleanups.
...
From-SVN: r120409
2007-01-03 15:49:10 -08:00
Paul Brook
5b3e666315
backport: thumb2.md: New file.
...
2007-01-03 Paul Brook <paul@codesourcery.com>
Merge from sourcerygxx-4_1.
gcc/
* config/arm/thumb2.md: New file.
* config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Return True for
Thumb-2.
* config/arm/coff.h (JUMP_TABLES_IN_TEXT_SECTION): Ditto.
* config/arm/aout.h (ASM_OUTPUT_ADDR_VEC_ELT): Add !Thumb-2 assertion.
(ASM_OUTPUT_ADDR_DIFF_ELT): Output Thumb-2 jump tables.
* config/arm/aof.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output Thumb-2 jump
tables.
(ASM_OUTPUT_ADDR_VEC_ELT): Add !Thumb-2 assertion.
* config/arm/ieee754-df.S: Use macros for Thumb-2/Unified asm
comptibility.
* config/arm/ieee754-sf.S: Ditto.
* config/arm/arm.c (thumb_base_register_rtx_p): Rename...
(thumb1_base_register_rtx_p): ... to this.
(thumb_index_register_rtx_p): Rename...
(thumb1_index_register_rtx_p): ... to this.
(thumb_output_function_prologue): Rename...
(thumb1_output_function_prologue): ... to this.
(thumb_legitimate_address_p): Rename...
(thumb1_legitimate_address_p): ... to this.
(thumb_rtx_costs): Rename...
(thumb1_rtx_costs): ... to this.
(thumb_compute_save_reg_mask): Rename...
(thumb1_compute_save_reg_mask): ... to this.
(thumb_final_prescan_insn): Rename...
(thumb1_final_prescan_insn): ... to this.
(thumb_expand_epilogue): Rename...
(thumb1_expand_epilogue): ... to this.
(arm_unwind_emit_stm): Rename...
(arm_unwind_emit_sequence): ... to this.
(thumb2_legitimate_index_p, thumb2_legitimate_address_p,
thumb1_compute_save_reg_mask, arm_dwarf_handle_frame_unspec,
thumb2_index_mul_operand, output_move_vfp, arm_shift_nmem,
arm_save_coproc_regs, thumb_set_frame_pointer, arm_print_condition,
thumb2_final_prescan_insn, thumb2_asm_output_opcode, arm_output_shift,
thumb2_output_casesi): New functions.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Define.
(FL_THUMB2, FL_NOTM, FL_DIV, FL_FOR_ARCH6T2, FL_FOR_ARCH7,
FL_FOR_ARCH7A, FL_FOR_ARCH7R, FL_FOR_ARCH7M, ARM_LSL_NAME,
THUMB2_WORK_REGS): Define.
(arm_arch_notm, arm_arch_thumb2, arm_arch_hwdiv, arm_condexec_count,
arm_condexec_mask, arm_condexec_masklen)): New variables.
(all_architectures): Add armv6t2, armv7, armv7a, armv7r and armv7m.
(arm_override_options): Check new CPU capabilities.
Set new architecture flag variables.
(arm_isr_value): Handle v7m interrupt functions.
(user_return_insn): Return 0 for v7m interrupt functions. Handle
Thumb-2.
(const_ok_for_arm): Handle Thumb-2 constants.
(arm_gen_constant): Ditto. Use movw when available.
(arm_function_ok_for_sibcall): Return false for v7m interrupt
functions.
(legitimize_pic_address, arm_call_tls_get_addr): Handle Thumb-2.
(thumb_find_work_register, arm_load_pic_register,
legitimize_tls_address, arm_address_cost, load_multiple_sequence,
emit_ldm_seq, emit_stm_seq, arm_select_cc_mode, get_jump_table_size,
print_multi_reg, output_mov_long_double_fpa_from_arm,
output_mov_long_double_arm_from_fpa, output_mov_double_fpa_from_arm,
output_mov_double_fpa_from_arm, output_move_double,
arm_compute_save_reg_mask, arm_compute_save_reg0_reg12_mask,
output_return_instruction, arm_output_function_prologue,
arm_output_epilogue, arm_get_frame_offsets, arm_regno_class,
arm_output_mi_thunk, thumb_set_return_address): Ditto.
(arm_expand_prologue): Handle Thumb-2. Use arm_save_coproc_regs.
(arm_coproc_mem_operand): Allow POST_INC/PRE_DEC.
(arithmetic_instr, shift_op): Use arm_shift_nmem.
(arm_print_operand): Use arm_print_condition. Handle '(', ')', '.',
'!' and 'L'.
(arm_final_prescan_insn): Use extract_constrain_insn_cached.
(thumb_expand_prologue): Use thumb_set_frame_pointer.
(arm_file_start): Output directive for unified syntax.
(arm_unwind_emit_set): Handle stack alignment instruction.
* config/arm/lib1funcs.asm: Remove default for __ARM_ARCH__.
Add v6t2, v7, v7a, v7r and v7m.
(RETLDM): Add Thumb-2 code.
(do_it, shift1, do_push, do_pop, COND, THUMB_SYNTAX): New macros.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __thumb2__.
(TARGET_THUMB1, TARGET_32BIT, TARGET_THUMB2, TARGET_DSP_MULTIPLY,
TARGET_INT_SIMD, TARGET_UNIFIED_ASM, ARM_FT_STACKALIGN, IS_STACKALIGN,
THUMB2_TRAMPOLINE_TEMPLATE, TRAMPOLINE_ADJUST_ADDRESS,
ASM_OUTPUT_OPCODE, THUMB2_GO_IF_LEGITIMATE_ADDRESS,
THUMB2_LEGITIMIZE_ADDRESS, CASE_VECTOR_PC_RELATIVE,
CASE_VECTOR_SHORTEN_MODE, ADDR_VEC_ALIGN, ASM_OUTPUT_CASE_END,
ADJUST_INSN_LENGTH): Define.
(TARGET_REALLY_IWMMXT, TARGET_IWMMXT_ABI, CONDITIONAL_REGISTER_USAGE,
STATIC_CHAIN_REGNUM, HARD_REGNO_NREGS, INDEX_REG_CLASS,
BASE_REG_CLASS, MODE_BASE_REG_CLASS, SMALL_REGISTER_CLASSES,
PREFERRED_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS,
SECONDARY_INPUT_RELOAD_CLASS, LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P,
TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE, HAVE_PRE_INCREMENT,
HAVE_POST_DECREMENT, HAVE_PRE_DECREMENT, HAVE_PRE_MODIFY_DISP,
HAVE_POST_MODIFY_DISP, HAVE_PRE_MODIFY_REG, HAVE_POST_MODIFY_REG,
REGNO_MODE_OK_FOR_BASE_P, LEGITIMATE_CONSTANT_P,
REG_MODE_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, GO_IF_LEGITIMATE_ADDRESS,
LEGITIMIZE_ADDRESS, THUMB2_LEGITIMIZE_ADDRESS,
GO_IF_MODE_DEPENDENT_ADDRESS, MEMORY_MOVE_COST, BRANCH_COST,
ASM_APP_OFF, ASM_OUTPUT_CASE_LABEL, ARM_DECLARE_FUNCTION_NAME,
FINAL_PRESCAN_INSN, PRINT_OPERAND_PUNCT_VALID_P,
PRINT_OPERAND_ADDRESS): Adjust for Thumb-2.
(arm_arch_notm, arm_arch_thumb2, arm_arch_hwdiv): New declarations.
* config/arm/arm-cores.def: Add arm1156t2-s, cortex-a8, cortex-r4 and
cortex-m3.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm-protos.h: Update prototypes.
* config/arm/vfp.md: Enable patterns for Thumb-2.
(arm_movsi_vfp): Add movw alternative. Use output_move_vfp.
(arm_movdi_vfp, movsf_vfp, movdf_vfp): Use output_move_vfp.
(thumb2_movsi_vfp, thumb2_movdi_vfp, thumb2_movsf_vfp,
thumb2_movdf_vfp, thumb2_movsfcc_vfp, thumb2_movdfcc_vfp): New.
* config/arm/libunwind.S: Add Thumb-2 code.
* config/arm/constraints.md: Update include Thumb-2.
* config/arm/ieee754-sf.S: Add Thumb-2/Unified asm support.
* config/arm/ieee754-df.S: Ditto.
* config/arm/bpabi.S: Ditto.
* config/arm/t-arm (MD_INCLUDES): Add thumb2.md.
* config/arm/predicates.md (low_register_operand,
low_reg_or_int_operand, thumb_16bit_operator): New.
(thumb_cmp_operand, thumb_cmpneg_operand): Rename...
(thumb1_cmp_operand, thumb1_cmpneg_operand): ... to this.
* config/arm/t-arm-elf: Add armv7 multilib.
* config/arm/arm.md: Update patterns for Thumb-2 and Unified asm.
Include thumb2.md.
(UNSPEC_STACK_ALIGN, ce_count): New.
(arm_incscc, arm_decscc, arm_umaxsi3, arm_uminsi3,
arm_zero_extendsidi2, arm_zero_extendqidi2): New
insns/expanders.
* config/arm/fpa.md: Update patterns for Thumb-2 and Unified asm.
(thumb2_movsf_fpa, thumb2_movdf_fpa, thumb2_movxf_fpa,
thumb2_movsfcc_fpa, thumb2_movdfcc_fpa): New insns.
* config/arm/cirrus.md: Update patterns for Thumb-2 and Unified asm.
(cirrus_thumb2_movdi, cirrus_thumb2_movsi_insn,
thumb2_cirrus_movsf_hard_insn, thumb2_cirrus_movdf_hard_insn): New
insns.
* doc/extend.texi: Document ARMv7-M interrupt functions.
* doc/invoke.texi: Document Thumb-2 new cores+architectures.
From-SVN: r120408
2007-01-03 23:48:10 +00:00
Jakub Jelinek
f8e7718c6f
unwind-dw2.c (SIGNAL_FRAME_BIT, [...]): Define.
...
* unwind-dw2.c (SIGNAL_FRAME_BIT, EXTENDED_CONTEXT_BIT): Define.
(struct _Unwind_Context): Rename args_size to flags, remove
signal_frame field, add a new args_size field and version field.
(_Unwind_IsSignalFrame, _Unwind_SetSignalFrame,
_Unwind_IsExtendedContext): New inline functions.
(_Unwind_GetGR, _Unwind_SetGR, _Unwind_GetGRPtr, _Unwind_SetGRPtr):
Assume by_value array is only present if _Unwind_IsExtendedContext.
(_Unwind_GetIPInfo, execute_cfa_program, uw_frame_state_for): Use
_Unwind_IsSignalFrame.
(__frame_state_for): Initialize context.flags to EXTENDED_CONTEXT_BIT.
(uw_update_context_1): Use _Unwind_SetSignalFrame.
(uw_init_context_1): Initialize context->flags to
EXTENDED_CONTEXT_BIT.
* config/rs6000/linux-unwind.h (frob_update_context): Use
_Unwind_SetSignalFrame.
From-SVN: r120406
2007-01-04 00:45:47 +01:00
Andrew Pinski
798d1cc9ee
Fix PR number in my last changelog entry, I got the testsuite one correct.
...
From-SVN: r120405
2007-01-03 15:02:13 -08:00
Andrew Pinski
d9c2d2969d
re PR target/20353 (uclibc does not provide C99 math functions)
...
2007-01-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/20353
* gimplify.c (gimplify_modify_expr_complex_part): Move below
tree_to_gimple_tuple. Call tree_to_gimple_tuple when we need
the value.
2007-01-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/30353
* gcc.c-torture/compile/complex-4.c: New test.
From-SVN: r120404
2007-01-03 15:00:40 -08:00