platform/upstream/gcc.git
16 years agotree-cfg.c (need_fake_edge_p): Return false for calls to builtins that return exactly...
Ben Elliston [Sat, 5 Apr 2008 03:50:18 +0000 (03:50 +0000)]
tree-cfg.c (need_fake_edge_p): Return false for calls to builtins that return exactly once and do not throw.

* tree-cfg.c (need_fake_edge_p): Return false for calls to
builtins that return exactly once and do not throw. Cache call to
call_expr_flags.

From-SVN: r133929

16 years agoDaily bump.
GCC Administrator [Sat, 5 Apr 2008 00:17:32 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133924

16 years agore PR target/34916 (gcc.c-torture/execute/pr27364.c fails with -O1, -O2 and -Os)
Andy Hutchinson [Fri, 4 Apr 2008 23:45:46 +0000 (23:45 +0000)]
re PR target/34916 (gcc.c-torture/execute/pr27364.c fails with -O1, -O2 and -Os)

PR rtl-optimization/34916
PR middle-end/35519
* combine.c (create_log_links): Do not create duplicate LOG_LINKS
between instruction pairs

From-SVN: r133920

16 years agoinvoke.texi: Document -mbitops for SH.
Naveen.H.S [Fri, 4 Apr 2008 23:36:19 +0000 (23:36 +0000)]
invoke.texi: Document -mbitops for SH.

* doc/invoke.texi: Document -mbitops for SH.
* config/sh/constraints.md (K03, K12, Sbv, Sbw): New constraints.
* config/sh/predicates.md (bitwise_memory_operand): New predicate.
* config/sh/sh.c (print_operand): Add %t operand code.
* config/sh/sh.h (GO_IF_LEGITIMATE_INDEX): Add condition for SH2A.
* config/sh/sh.md (*iorsi3_compact): Fix condition for SH2A.
(extendqisi2_compact): Add the alternative for SH2A 4-byte mov.b.
(extendqihi2): Likewise.
(movqi_i): Likewise.
(insv): Use bset, bclr and bst instructions for SH2A if possible.
(extv): Use bld instruction for SH2A if possible.
(extzv): Likewise.
(bclr_m2a, bclrmem_m2a, bset_m2a, bsetmem_m2a, bst_m2a, bld_m2a,
bldsign_m2a, bld_reg, *bld_regqi, band_m2a, bandreg_m2a,
bor_m2a, borreg_m2a, bxor_m2a, bxorreg_m2a): New insns.
(bset.b, bclr.b): Define peepholes.
* config/sh/sh.opt (mbitops): New option.

* gcc.target/sh/sh2a-band.c: New test.
* gcc.target/sh/sh2a-bclrmem.c: New test.
* gcc.target/sh/sh2a-bld.c: New test.
* gcc.target/sh/sh2a-bor.c: New test.
* gcc.target/sh/sh2a-bsetmem.c: New test.
* gcc.target/sh/sh2a-bxor.c: New test.

From-SVN: r133919

16 years ago* MAINTAINERS (Write After Approval): Add myself.
Andy Hutchinson [Fri, 4 Apr 2008 23:16:12 +0000 (23:16 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133918

16 years ago* g++.dg/other/anon5.C: Don't depend on line number for error message.
Janis Johnson [Fri, 4 Apr 2008 21:03:43 +0000 (21:03 +0000)]
* g++.dg/other/anon5.C: Don't depend on line number for error message.

From-SVN: r133913

16 years agobuiltin-modf-1.c: Use special options for powerpc*-*-linux*.
Janis Johnson [Fri, 4 Apr 2008 21:02:55 +0000 (21:02 +0000)]
builtin-modf-1.c: Use special options for powerpc*-*-linux*.

* gcc.dg/torture/builtin-modf-1.c: Use special options for
powerpc*-*-linux*.

From-SVN: r133912

16 years ago* gcc.dg/var-expand3.c: Skip for powerpc-linux if not on AltiVec HW.
Janis Johnson [Fri, 4 Apr 2008 21:01:20 +0000 (21:01 +0000)]
* gcc.dg/var-expand3.c: Skip for powerpc-linux if not on AltiVec HW.

From-SVN: r133911

16 years ago* gcc.dg/pr34856.c: Use -maltivec on powerpc linux.
Janis Johnson [Fri, 4 Apr 2008 20:59:33 +0000 (20:59 +0000)]
* gcc.dg/pr34856.c: Use -maltivec on powerpc linux.

From-SVN: r133910

16 years agore PR target/35620 (ICE passing dereferenced pointer to _Decimal32)
Janis Johnson [Fri, 4 Apr 2008 20:18:52 +0000 (20:18 +0000)]
re PR target/35620 (ICE passing dereferenced pointer to _Decimal32)

gcc/
PR target/35620
* config/rs6000/rs6000.c (rs6000_check_sdmode): Handle indirect ref
and view convert expression.

testsuite/
PR target/35620
* gcc.dg/dfp/pr35620.c: New test.
* gcc.dg/dfp/func-pointer.c: New test.
* gcc.dg/dfp/func-deref.c: New test.

From-SVN: r133909

16 years agore PR target/35364 (ICE on ia64 with vector declaration inside #pragma omp parallel)
Jakub Jelinek [Fri, 4 Apr 2008 17:48:45 +0000 (19:48 +0200)]
re PR target/35364 (ICE on ia64 with vector declaration inside #pragma omp parallel)

PR target/35364
* tree-cfg.c (remove_useless_stmts_1): Handle OMP_* containers.

* g++.dg/gomp/pr35364.C: New test.

From-SVN: r133905

16 years agoChange UNSPEC_PCLMULQDQ to UNSPEC_PCLMUL.
H.J. Lu [Fri, 4 Apr 2008 17:22:48 +0000 (10:22 -0700)]
Change UNSPEC_PCLMULQDQ to UNSPEC_PCLMUL.

From-SVN: r133903

16 years agoconfig.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64.
H.J. Lu [Fri, 4 Apr 2008 16:10:52 +0000 (16:10 +0000)]
config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64.

gcc/

2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>

* config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64.

* config/i386/cpuid.h (bit_AES): New.
(bit_PCLMUL): Likewise.

* config/i386/i386.c (pta_flags): Add PTA_AES and PTA_PCLMUL.
(override_options): Handle PTA_AES and PTA_PCLMUL.  Enable
SSE2 if AES or PCLMUL is enabled.
(ix86_builtins): Add IX86_BUILTIN_AESENC128,
IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128,
IX86_BUILTIN_AESDECLAST128, IX86_BUILTIN_AESIMC128,
IX86_BUILTIN_AESKEYGENASSIST128 and IX86_BUILTIN_PCLMULQDQ128.
(bdesc_sse_3arg): Add IX86_BUILTIN_PCLMULQDQ128.
(bdesc_2arg): Add IX86_BUILTIN_AESENC128,
IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128,
IX86_BUILTIN_AESDECLAST128 and IX86_BUILTIN_AESKEYGENASSIST128.
(bdesc_1arg): Add IX86_BUILTIN_AESIMC128.
(ix86_init_mmx_sse_builtins): Define __builtin_ia32_aesenc128,
__builtin_ia32_aesenclast128, __builtin_ia32_aesdec128,
__builtin_ia32_aesdeclast128,__builtin_ia32_aesimc128,
__builtin_ia32_aeskeygenassist128 and
__builtin_ia32_pclmulqdq128.
* config/i386/i386.c (ix86_expand_binop_imm_builtin): New.
(ix86_expand_builtin): Use it for IX86_BUILTIN_PSLLDQI128 and
IX86_BUILTIN_PSRLDQI128.  Handle IX86_BUILTIN_AESKEYGENASSIST128.

* config/i386/i386.h (TARGET_AES): New.
(TARGET_PCLMUL): Likewise.
(TARGET_CPU_CPP_BUILTINS): Handle TARGET_AES and TARGET_PCLMUL.

* config/i386/i386.md (UNSPEC_AESENC): New.
(UNSPEC_AESENCLAST): Likewise.
(UNSPEC_AESDEC): Likewise.
(UNSPEC_AESDECLAST): Likewise.
(UNSPEC_AESIMC): Likewise.
(UNSPEC_AESKEYGENASSIST): Likewise.
(UNSPEC_PCLMULQDQ): Likewise.

* config/i386/i386.opt (maes): New.
(mpclmul): Likewise.

* config/i386/sse.md (aesenc): New pattern.
(aesenclast): Likewise.
(aesdec): Likewise.
(aesdeclast): Likewise.
(aesimc): Likewise.
(aeskeygenassist): Likewise.
(pclmulqdq): Likewise.

* config/i386/wmmintrin.h: New.

* doc/extend.texi: Document AES and PCLMUL built-in function.

* doc/invoke.texi: Document -maes and -mpclmul.

gcc/testsuite/

2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>

* g++.dg/other/i386-2.C: Include <wmmintrin.h>.
* g++.dg/other/i386-3.C: Likewise.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.

* gcc.target/i386/aes-check.h: New.
* gcc.target/i386/aesdec.c: Likewise.
* gcc.target/i386/aesdeclast.c: Likewise.
* gcc.target/i386/aesenc.c: Likewise.
* gcc.target/i386/aesenclast.c: Likewise.
* gcc.target/i386/aesimc.c: Likewise.
* gcc.target/i386/aeskeygenassist.c: Likewise.
* gcc.target/i386/pclmulqdq.c: Likewise.
* gcc.target/i386/pclmul-check.h: Likewise.

* gcc.target/i386/i386.exp (check_effective_target_aes): New.
(check_effective_target_pclmul): Likewise.

From-SVN: r133902

16 years agofunction.c (free_after_parsing): Replace with cxx_push_function_context from C++...
Paolo Bonzini [Fri, 4 Apr 2008 14:57:18 +0000 (14:57 +0000)]
function.c (free_after_parsing): Replace with cxx_push_function_context from C++ front-end.

2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

* function.c (free_after_parsing): Replace with
cxx_push_function_context from C++ front-end.
(allocate_struct_function): Don't call langhook.
* langhooks.h (struct lang_hooks_for_functions): Delete.
(struct lang_hooks): Add back missing_noreturn_ok_p here, delete
member "function".
* langhooks-def.h (LANG_HOOKS_MISSING_NORETURN_OK_P): Add.
(LANG_HOOKS_FUNCTION_INIT, LANG_HOOKS_FUNCTION_FINAL,
LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
LANG_HOOKS_FUNCTION_INITIALIZER): Delete.
(LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_MISSING_NORETURN_OK_P,
remove LANG_HOOKS_FUNCTION_INITIALIZER.
* tree-cfg.c: Adjust call to missing_noreturn_ok_p langhook.

* c-objc-common.h (LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P):
Rename to LANG_HOOKS_MISSING_NORETURN_OK_P.

cp:
2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

* decl.c (cxx_push_function_context): Delete.
(cxx_pop_function_context): Delete.
(start_preparsed_function): Merge cxx_push_function_context (!f->decl
code only).
* cp-objcp-common.h (LANG_HOOKS_FUNCTION_INIT,
LANG_HOOKS_FUNCTION_FINAL): Delete.
(LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P): Rename to
LANG_HOOKS_MISSING_NORETURN_OK_P.
* cp-tree.h (cxx_push_function_context, cxx_pop_function_context):
Delete prototype.
* semantics.c (current_stmt_tree): Fix comment.

From-SVN: r133900

16 years agore PR c/35440 (ICE resulting in completely broken diagnostic)
Jakub Jelinek [Fri, 4 Apr 2008 13:07:27 +0000 (15:07 +0200)]
re PR c/35440 (ICE resulting in completely broken diagnostic)

PR c/35440
* c-pretty-print.c (pp_c_initializer_list): Handle CONSTRUCTOR
for all types.

* gcc.dg/pr35440.c: New test.

From-SVN: r133897

16 years agoFix typo
Nick Clifton [Fri, 4 Apr 2008 11:45:46 +0000 (11:45 +0000)]
Fix typo

From-SVN: r133895

16 years agore PR middle-end/4334 (Flow control insn inside a basic block, arm/netbsd, gcc 3.1)
Nick Clifton [Fri, 4 Apr 2008 11:39:20 +0000 (11:39 +0000)]
re PR middle-end/4334 (Flow control insn inside a basic block, arm/netbsd, gcc 3.1)

        PR binutils/4334
        * acx.m4 (ACX_CHECK_CYGWIN_CAT_WORKS): New macro to check that
        cygwin builds are not running in textmode.

        * configure.ac: Run ACX_XHEXK_CYGWIN_CAT_WORKS for cygwin hosted
        builds.
        * configure: Regenerate.

From-SVN: r133894

16 years agore PR middle-end/35823 (verify_gimple fails on taking 'Size of a String subprogram...
Richard Guenther [Fri, 4 Apr 2008 11:29:11 +0000 (11:29 +0000)]
re PR middle-end/35823 (verify_gimple fails on taking 'Size of a String subprogram parameter)

2008-04-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/35823
* fold-const.c (optimize_minmax_comparison): Use the correct
type for the constant in the simplified comparison.

* gnat.dg/pr35823.adb: New testcase.

From-SVN: r133893

16 years agore PR other/35151 (Combine mingw names)
NightStrike [Fri, 4 Apr 2008 11:16:10 +0000 (11:16 +0000)]
re PR other/35151 (Combine mingw names)

PR other/35151
        * configure.ac: Combine rules for mingw32 and mingw64.
        * configure: Regenerate.

From-SVN: r133892

16 years agodriver-i386.c (describe_cache): Add l2_sizekb argument.
Zuxy Meng [Fri, 4 Apr 2008 07:39:12 +0000 (07:39 +0000)]
driver-i386.c (describe_cache): Add l2_sizekb argument.

* config/i386/driver-i386.c (describe_cache): Add l2_sizekb argument.
Pass L2 size as "--param l2-cache-size" to the compiler.
(decode_l2_cache): New function to decode L2 cache parameters using
0x8000006 extended cpuid function.
(detect_caches_amd): Determine parameters of L2 cache using
decode_l2_caches function.
(decode_caches_intel): Decode L2 cache parameters.
(detect_caches_intel): Determine L2 cache parameters using
decode_caches_intel and decode_l2_caches functions.

From-SVN: r133890

16 years agoxtensa.c (xtensa_secondary_reload_class): Use a secondary input reload for subword...
Bob Wilson [Fri, 4 Apr 2008 03:55:15 +0000 (03:55 +0000)]
xtensa.c (xtensa_secondary_reload_class): Use a secondary input reload for subword loads from the constant pool.

        * config/xtensa/xtensa.c (xtensa_secondary_reload_class): Use a
        secondary input reload for subword loads from the constant pool.

From-SVN: r133889

16 years agore PR target/35713 (invalid type for va_arg with _Decimal128)
Janis Johnson [Fri, 4 Apr 2008 00:20:48 +0000 (00:20 +0000)]
re PR target/35713 (invalid type for va_arg with _Decimal128)

PR target/35713
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use integer
  constants of the appropriate size for runtime calculations.

From-SVN: r133887

16 years agoDaily bump.
GCC Administrator [Fri, 4 Apr 2008 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133885

16 years agore PR c/35712 (decimal float literal constant zero loses significant trailing zeroes)
Janis Johnson [Thu, 3 Apr 2008 23:49:35 +0000 (23:49 +0000)]
re PR c/35712 (decimal float literal constant zero loses significant trailing zeroes)

2008-04-03  Janis Johnson  <janis187@us.ibm.com>

gcc/
PR c/35712
* dfp.c (decimal_from_decnumber): Retain trailing zeroes for
  decimal-float literal constant zero.

testsuite/
PR c/35712
* gcc.dg/dfp/constants-zero.c: New test.

From-SVN: r133881

16 years agore PR c/35738 (ICE with #pragma omp atomic and conversion from pointer to int)
Jakub Jelinek [Thu, 3 Apr 2008 21:03:54 +0000 (23:03 +0200)]
re PR c/35738 (ICE with #pragma omp atomic and conversion from pointer to int)

PR c/35738
* c-parser.c (c_parser_omp_atomic): Call
default_function_array_conversion on the RHS.

* gcc.dg/gomp/pr35738.c: New test.

From-SVN: r133876

16 years agore PR middle-end/35818 (ICE on incomplete array in shared clause)
Jakub Jelinek [Thu, 3 Apr 2008 21:02:44 +0000 (23:02 +0200)]
re PR middle-end/35818 (ICE on incomplete array in shared clause)

PR middle-end/35818
* omp-low.c (scan_sharing_clauses) <case OMP_CLAUSE_SHARED>: Don't
call is_variable_sized if decl has incomplete type.

* gcc.dg/gomp/pr35818.c: New test.

From-SVN: r133875

16 years agore PR fortran/35786 (OpenMP Fortran PRIVATE on parameter gives error in gfc_finish_va...
Jakub Jelinek [Thu, 3 Apr 2008 21:01:26 +0000 (23:01 +0200)]
re PR fortran/35786 (OpenMP Fortran PRIVATE on parameter gives error in gfc_finish_var_decl)

PR fortran/35786
* openmp.c (resolve_omp_clauses): Diagnose if a clause symbol
isn't a variable.

* gfortran.dg/gomp/pr35786-1.f90: New test.
* gfortran.dg/gomp/pr35786-2.f90: New test.

From-SVN: r133874

16 years agoi386-protos.h (ix86_aligned_p): Removed.
H.J. Lu [Thu, 3 Apr 2008 20:02:54 +0000 (20:02 +0000)]
i386-protos.h (ix86_aligned_p): Removed.

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386-protos.h (ix86_aligned_p): Removed.

From-SVN: r133873

16 years agomips.md (any_gt, [...]): New code iterators.
Adam Nemet [Thu, 3 Apr 2008 19:31:28 +0000 (19:31 +0000)]
mips.md (any_gt, [...]): New code iterators.

* config/mips/mips.md (any_gt, any_ge, any_lt, any_le): New code
iterators.
(u): Add attribute values for gt, gtu, ge, geu, lt, ltu, le and
leu.
(sgt<u>): Merge sgt and sgtu into new expander.
(sgt, sgtu): Remove expanders.
(*sgt<u>_<mode>): Merge *sgt_<mode> and *sgtu_<mode> into new
pattern.
(*sgt_<mode>, *sgtu_<mode>): Remove patterns.
(*sgt<u>_<mode>_mips16): Merge *sgt_<mode>_mips16 and
*sgtu_<mode>_mips16 into new pattern.
(*sgt_<mode>_mips16, *sgtu_<mode>_mips16): Remove patterns.
(sge<u>): Merge sge and sgeu into new expander.
(sge, sgeu): Remove expanders.
(*sge<u>_<mode>): Merge *sge_<mode> and second *sge_<mode> into
new pattern.
(*sge_<mode>, second *sge_<mode>): Remove patterns.
(slt<u>): Merge slt and sltu into new expander.
(slt, sltu): Remove expanders.
(*slt<u>_<mode>): Merge *slt_<mode> and *sltu_<mode> into new
pattern.
(*slt_<mode>, *sltu_<mode>): Remove patterns.
(*slt<u>_<mode>_mips16): Merge *slt_<mode>_mips16 and
*sltu_<mode>_mips16 into new pattern.
(*slt_<mode>_mips16, *sltu_<mode>_mips16): Remove patterns.
(sle<u>): Merge sle and sleu into new expander.
(sle, sleu): Remove expanders.
(*sle<u>_<mode>): Merge *sle_<mode> and *sleu_<mode> into new
pattern.
(*sle_<mode>, *sleu_<mode>): Remove patterns.
(*sle<u>_<mode>_mips16): Merge *sle_<mode>_mips16 and
*sleu_<mode>_mips16 into new pattern.
(*sle_<mode>_mips16, *sleu_<mode>_mips16): Remove patterns.

testsuite/

* gcc.target/mips/scc-1.c: New test.

From-SVN: r133872

16 years agore PR target/35795 (Revision 133787 breaks ia64)
Jan Hubicka [Thu, 3 Apr 2008 12:49:27 +0000 (05:49 -0700)]
re PR target/35795 (Revision 133787 breaks ia64)

2008-04-03  Jan Hubicka  <jh@suse.cz>

PR tree-optimization/35795
* alpha/alpha.c (alpha_output_mi_thunk_osf): Free after compilation.
* sparc/sparc.c (sparc_output_mi_thunk): Likewise.
* ia64/ia64.c (ia64_output_mi_thunk): Likewise.
* m68k/m68k.c (m68k_output_mi_thunk): Likewise.
* score/score3.c (score3_output_mi_thunk): Likewise.
* score/score7.c (score7_output_mi_thunk): Likewise.
* mips/mips.c (mips_output_mi_thunk): Likewise.

From-SVN: r133868

16 years agotree-vrp.c (extract_range_from_unary_expr): Handle all conversions.
Richard Guenther [Thu, 3 Apr 2008 09:33:27 +0000 (09:33 +0000)]
tree-vrp.c (extract_range_from_unary_expr): Handle all conversions.

2008-04-03  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_unary_expr): Handle all
conversions.  Simplify code.

* gcc.dg/tree-ssa/vrp43.c: New testcase.
* gcc.dg/tree-ssa/vrp44.c: Likewise.
* gcc.dg/tree-ssa/vrp45.c: Likewise.

From-SVN: r133866

16 years ago* config/sh/sh.c (sh_output_mi_thunk): Free cfun.
Kaz Kojima [Thu, 3 Apr 2008 09:07:17 +0000 (09:07 +0000)]
* config/sh/sh.c (sh_output_mi_thunk): Free cfun.

From-SVN: r133865

16 years agore PR c++/35741 (ICE with offsetof and references)
Jakub Jelinek [Thu, 3 Apr 2008 07:43:46 +0000 (09:43 +0200)]
re PR c++/35741 (ICE with offsetof and references)

PR c++/35741
* semantics.c (finish_offsetof): Undo effect of convert_from_reference
before calling fold_offsetof.

* g++.dg/other/offsetof5.C: New test.

From-SVN: r133863

16 years agot-uclinux (generated_files): Add sysroot-suffix.h.
Tom Tromey [Thu, 3 Apr 2008 06:12:27 +0000 (06:12 +0000)]
t-uclinux (generated_files): Add sysroot-suffix.h.

gcc/
2008-04-03  Tom Tromey  <tromey@redhat.com>
    Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

* config/m68k/t-uclinux (generated_files): Add sysroot-suffix.h.
* config/bfin/t-bfin-linux (generated_files): Add
linux-sysroot-suffix.h.
* doc/install.texi (Prerequisites): Require make 3.80.
* doc/sourcebuild.texi (Front End Directory): Document new
variable.
* Makefile.in (generated_files): New variable.
(ALL_HOST_OBJS): New variable.
($(ALL_HOST_OBJS)): New target.

gcc/java/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (java_OBJS): New variable.

gcc/objc/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (objc_OBJS): New variable.

gcc/objcp/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (obj-c++_OBJS): New variable.

gcc/cp/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (c++_OBJS): New variable.

gcc/fortran/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (fortran_OBJS): New variable.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r133862

16 years agotree-inline.c (copy_generic_body, [...]): Export.
Paolo Bonzini [Thu, 3 Apr 2008 05:41:57 +0000 (05:41 +0000)]
tree-inline.c (copy_generic_body, [...]): Export.

2007-03-09  Paolo Bonzini  <bonzini@gnu.org>

* tree-inline.c (copy_generic_body, copy_decl_no_change): Export.
(remap_block): Call id->transform_lang_insert_block instead
of langhook.
(optimize_inline_calls, unsave_expr_now, tree_function_versioning):
Set id.transform_lang_insert_block to NULL.
(clone_body): Move to cp/optimize.c
* tree-inline.h (struct copy_body_data): Change
transform_lang_insert_block to function pointer.
(copy_generic_body, copy_decl_no_change): Export.
* langhooks.h (struct lang_hooks_for_decls): Kill insert_block.
* langhooks-def.h (LANG_HOOKS_INSERT_BLOCK): Kill.
(LANG_HOOKS_DECLS): Remove LANG_HOOKS_INSERT_BLOCK.

* c-tree.h (insert_block): Kill.
* c-decl.c (insert_block): Kill.

cp:
2007-03-09  Paolo Bonzini  <bonzini@gnu.org>

* optimize.c (clone_body): New, from tree-inline.c.

ada:
2007-03-09  Paolo Bonzini  <bonzini@gnu.org>

* gigi.h (insert_block): Kill.
* utils.c (insert_block): Kill.

java:
2007-03-09  Paolo Bonzini  <bonzini@gnu.org>

* java-tree.h (insert_block): Kill.
* decl.c (insert_block): Kill.

fortran:
2007-03-09  Paolo Bonzini  <bonzini@gnu.org>

* f95-lang.c (insert_block): Kill.

From-SVN: r133861

16 years agoc-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED, [...]): Delete.
Paolo Bonzini [Thu, 3 Apr 2008 05:38:32 +0000 (05:38 +0000)]
c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED, [...]): Delete.

2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

* c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
* c-tree.h (c_push_function_context, c_pop_function_context): Remove
argument.
* c-decl.c (c_push_function_context, c_pop_function_context): Remove
argument, call {push,pop}_function_context from here.
* c-parser.c: Use c_{push,pop}_function_context.

* function.c (push_function_context_to): Move meat ...
(push_function_context): ... here.  Simplify.
* function.c (pop_function_context_from): Move meat ...
(pop_function_context): ... here.  Simplify.
* langhooks.h (struct lang_hooks_for_functions): Remove enter_nested,
leave_nested).
* langhooks-def.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
        LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
(LANG_HOOKS_FUNCTION_INITIALIZER): Delete them from here.
* tree.h (push_function_context_to, pop_function_context_from): Remove.

cp:
2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

* method.c (synthesize_method): Use {push,pop}_function_context.
* name-lookup.c (push_to_top_level): Likewise.
* parser.c (cp_parser_late_parsing_for_member): Likewise.

From-SVN: r133860

16 years agore PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)
Paolo Bonzini [Thu, 3 Apr 2008 05:36:26 +0000 (05:36 +0000)]
re PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)

2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

PR rtl-optimization/35281
* gcc.target/i386/pr35281.c: New test.

From-SVN: r133859

16 years ago* expmed.c (extract_force_align_mem_bit_field): Remove.
Ben Elliston [Thu, 3 Apr 2008 05:17:11 +0000 (05:17 +0000)]
* expmed.c (extract_force_align_mem_bit_field): Remove.

From-SVN: r133858

16 years agore PR middle-end/35800 (Revision 133835 failed to compile binutils)
Richard Guenther [Thu, 3 Apr 2008 02:09:20 +0000 (02:09 +0000)]
re PR middle-end/35800 (Revision 133835 failed to compile binutils)

PR middle-end/35800
* expr.h (try_casesi): Adjust prototype.
* expr.c (try_casesi): Take fallback label as extra parameter.
Use that for gen_casesi if default_label is NULL.
* stmt.c (expand_case): Pass fallback label to try_casesi,
make sure to fill gaps with a fallback label if default_label
is not present.

From-SVN: r133857

16 years agore PR middle-end/35800 (Revision 133835 failed to compile binutils)
Richard Guenther [Thu, 3 Apr 2008 02:08:13 +0000 (02:08 +0000)]
re PR middle-end/35800 (Revision 133835 failed to compile binutils)

PR middle-end/35800
* gcc.c-torture/execute/pr35800.c: New test.

From-SVN: r133856

16 years agore PR target/35801 (At revision 133817, bootstrap fails at libstdc++-v3/src/strstream...
Dominique d'Humieres [Thu, 3 Apr 2008 00:33:05 +0000 (02:33 +0200)]
re PR target/35801 (At revision 133817, bootstrap fails at libstdc++-v3/src/strstream.cc on powerpc-apple-darwin9)

2008-04-03  Dominique d'Humieres <dominiq@lps.ens.fr>

        PR target/35801
        * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Free cfun.

From-SVN: r133855

16 years agoDaily bump.
GCC Administrator [Thu, 3 Apr 2008 00:17:34 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133853

16 years agoexpmed.c (extract_split_bit_field): Remove if (0) code.
Ben Elliston [Wed, 2 Apr 2008 19:56:03 +0000 (19:56 +0000)]
expmed.c (extract_split_bit_field): Remove if (0) code.

* expmed.c (extract_split_bit_field): Remove if (0) code.
* tree-ssa-structalias.c (do_sd_constraint): Likewise.
(do_ds_constraint): Likewise.

From-SVN: r133848

16 years agocppopts.texi (-dU): Document.
Joseph Myers [Wed, 2 Apr 2008 19:42:53 +0000 (20:42 +0100)]
cppopts.texi (-dU): Document.

gcc:
* doc/cppopts.texi (-dU): Document.
* c-common.h (flag_dump_macros): Update comment.
* c-opts.c (handle_OPT_d): Handle -dU.
* c-ppoutput.c (macro_queue, define_queue, undef_queue,
dump_queued_macros, cb_used_define, cb_used_undef): New.
(init_pp_output): Handle -dU.
(cb_line_change): Call dump_queued_macros.
* toplev.c (decode_d_option): Accept -dU as preprocessor option.

gcc/testsuite:
* gcc.dg/cpp/cmdlne-dU-1.c, gcc.dg/cpp/cmdlne-dU-2.c,
gcc.dg/cpp/cmdlne-dU-3.c, gcc.dg/cpp/cmdlne-dU-4.c,
gcc.dg/cpp/cmdlne-dU-5.c, gcc.dg/cpp/cmdlne-dU-6.c,
gcc.dg/cpp/cmdlne-dU-7.c, gcc.dg/cpp/cmdlne-dU-8.c,
gcc.dg/cpp/cmdlne-dU-9.c, gcc.dg/cpp/cmdlne-dU-10.c,
gcc.dg/cpp/cmdlne-dU-11.c, gcc.dg/cpp/cmdlne-dU-12.c,
gcc.dg/cpp/cmdlne-dU-13.c, gcc.dg/cpp/cmdlne-dU-14.c,
gcc.dg/cpp/cmdlne-dU-15.c, gcc.dg/cpp/cmdlne-dU-16.c,
gcc.dg/cpp/cmdlne-dU-17.c, gcc.dg/cpp/cmdlne-dU-18.c,
gcc.dg/cpp/cmdlne-dU-19.c, gcc.dg/cpp/cmdlne-dU-20.c,
gcc.dg/cpp/cmdlne-dU-21.c, gcc.dg/cpp/cmdlne-dU-22.c: New tests.

libcpp:
* include/cpplib.h (struct cpp_callbacks): Add used_define,
used_undef and before_define.
(NODE_USED): Define.
* directives.c (do_define, do_undef, undefine_macros, do_ifdef,
do_ifndef, cpp_pop_definition): Handle new flag and use new
callbacks.
* expr.c (parse_defined): Handle new flag and use new callbacks.
* macro.c (enter_macro_context, _cpp_free_definition): Handle new
flag and use new callbacks.

From-SVN: r133847

16 years agopredicates.md (io_address_operand): New predicate.
Anatoly Sokolov [Wed, 2 Apr 2008 19:21:01 +0000 (23:21 +0400)]
predicates.md (io_address_operand): New predicate.

* config/avr/predicates.md (io_address_operand): New predicate.
* config/avr/avr-protos.h (avr_io_address_p): Remove declaration.
* config/avr/avr.c (avr_io_address_p): Remove function.
(out_movqi_r_mr): Use 'io_address_operand' predicate instead of
'avr_io_address_p' function.
(out_movhi_r_mr): (Ditto.).
(out_movqi_mr_r): (Ditto.).
(out_movhi_mr_r): (Ditto.).
(avr_address_cost): (Ditto.).

From-SVN: r133846

16 years agoi386.md (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Emit gen_floatdi<X87MODEF:mode...
Uros Bizjak [Wed, 2 Apr 2008 19:07:27 +0000 (21:07 +0200)]
i386.md (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Emit gen_floatdi<X87MODEF:mode>2_i387_with_xmm for DImode values in 32bit mode...

        * config/i386/i386.md (*float<SSEMODEI24:mode><X87MODEF:mode>2_1):
        Emit gen_floatdi<X87MODEF:mode>2_i387_with_xmm for DImode values
        in 32bit mode when XMM registers are available to avoid store
        forwarding stalls.
        (floatdi<X87MODEF:mode>2_i387_with_xmm): New insn pattern and
        corresponding post-reload splitters.

From-SVN: r133845

16 years agore PR bootstrap/35216 (Out of memory building java)
Peter O'Gorman [Wed, 2 Apr 2008 17:36:41 +0000 (17:36 +0000)]
re PR bootstrap/35216 (Out of memory building java)

PR bootstrap/35216
* scripts/makemake.tcl: Replace org/omg build with build of all its subpackages.
* sources.am: Regenerate.
* Makefile.in: Regenerate.

From-SVN: r133842

16 years agoi386.c (bdesc_sse_3arg): Add __builtin_ia32_shufps and __builtin_ia32_shufpd.
H.J. Lu [Wed, 2 Apr 2008 14:32:02 +0000 (14:32 +0000)]
i386.c (bdesc_sse_3arg): Add __builtin_ia32_shufps and __builtin_ia32_shufpd.

2008-04-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (bdesc_sse_3arg): Add __builtin_ia32_shufps
and __builtin_ia32_shufpd.  Provide __builtin_ia32_roundsd and
__builtin_ia32_roundss.
(ix86_init_mmx_sse_builtins): Remove __builtin_ia32_shufps,
__builtin_ia32_shufpd, __builtin_ia32_roundsd and
__builtin_ia32_roundss.
(ix86_expand_builtin): Don't handle IX86_BUILTIN_SHUFPS and
IX86_BUILTIN_SHUFPD here.

From-SVN: r133838

16 years agoi386.md (plogic): New.
H.J. Lu [Wed, 2 Apr 2008 13:53:38 +0000 (13:53 +0000)]
i386.md (plogic): New.

2008-04-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (plogic): New.
(plogicprefix): Likewise.

* config/i386/mmx.md (mmx_<code><mode>3): New.
(mmx_and<mode>3): Removed.
(mmx_ior<mode>3): Likewise.
(mmx_xor<mode>3): Likewise.

* config/i386/sse.md (<code><mode>3): New.
(*<code><mode>3): Likewise.
(*<code><mode>3): Likewise.
(<code><mode>3): Likewise.
(*sse_<code><mode>3): Likewise.
(*sse2_<code><mode>3): Likewise.
(<code>tf3): Likewise.
(*<code>tf3): Likewise.
(and<mode>3): Likewise.
(*and<mode>3): Likewise.
(ior<mode>3): Removed.
(*ior<mode>3): Likewise.
(xor<mode>3): Likewise.
(*xor<mode>3): Likewise.
(*and<mode>3): Likewise.
(*ior<mode>3): Likewise.
(*xor<mode>3): Likewise.
(and<mode>3): Likewise.
(*sse_and<mode>3): Likewise.
(*sse2_and<mode>3): Likewise.
(andtf3): Likewise.
(*andtf3): Likewise.
(ior<mode>3): Likewise.
(*sse_ior<mode>3): Likewise.
(*sse2_ior<mode>3): Likewise.
(iortf3): Likewise.
(*iortf3): Likewise.
(xor<mode>3): Likewise.
(*sse_xor<mode>3): Likewise.
(*sse2_xor<mode>3): Likewise.
(xortf3): Likewise.
(*xortf3): Likewise.

From-SVN: r133837

16 years agore PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)
Richard Guenther [Wed, 2 Apr 2008 12:54:08 +0000 (12:54 +0000)]
re PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)

2008-04-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/14495
PR tree-optimization/34793
* tree-vrp.c (struct switch_update): New structure.
(to_remove_edges, to_update_switch_stmts): New VECs.
(simplify_switch_using_ranges): New function.  Remove not taken
case labels and edges.
(simplify_stmt_using_ranges): Call it.
(identify_jump_threads): Mark edges we have queued for removal
so we don't thread them.
(execute_vrp): Remove edges queued for removal, update SWITCH_STMT
case label vector.
* tree-cfg.c (group_case_labels): Deal with missing default label.
(tree_verify_flow_info): Allow missing default label.
* stmt.c (emit_case_bit_tests): Deal with NULL default_label.
(emit_case_nodes): Likewise.
(expand_case): Do not rely on the default label to be present.
* expr.c (try_casesi): Deal with NULL default_label.
(do_tablejump): Likewise.

* gcc.dg/tree-ssa/vrp41.c: New testcase.
* gcc.dg/tree-ssa/vrp42.c: Likewise.

From-SVN: r133835

16 years agore PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)
Richard Guenther [Wed, 2 Apr 2008 12:51:37 +0000 (12:51 +0000)]
re PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)

2008-04-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/14495
* tree-vrp.c (vrp_visit_cond_stmt): Do not handle
SWITCH_EXPR here ...
(vrp_visit_switch_stmt): ... but here (new function).
(find_case_label_index): New helper function.
(vrp_visit_stmt): Dispatch to vrp_visit_switch_stmt.

* gcc.dg/tree-ssa/vrp40.c: New testcase.

From-SVN: r133834

16 years agofwprop.c: Fix ISO-C99ism.
Paolo Bonzini [Wed, 2 Apr 2008 12:16:54 +0000 (12:16 +0000)]
fwprop.c: Fix ISO-C99ism.

2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

* fwprop.c: Fix ISO-C99ism.

From-SVN: r133833

16 years agore PR bootstrap/35752 (Combined gcc + binutils source tree doesn't bootstrap with...
Paolo Bonzini [Wed, 2 Apr 2008 10:07:58 +0000 (10:07 +0000)]
re PR bootstrap/35752 (Combined gcc + binutils source tree doesn't bootstrap with --enable-shared)

2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

PR bootstrap/35752
* Makefile.in (objdir): Set it here.
* configure.ac: Not here.  Find dynamic linker characteristics.
* exec-tool.in: Use them.
* aclocal.m4: Regenerate.
* configure: Regenerate.

From-SVN: r133832

16 years agodecl.c (gnat_to_gnu_entity): For a constant object whose type has self-referential...
Eric Botcazou [Wed, 2 Apr 2008 10:06:57 +0000 (10:06 +0000)]
decl.c (gnat_to_gnu_entity): For a constant object whose type has self-referential size...

* decl.c (gnat_to_gnu_entity) <object>: For a constant object whose
type has self-referential size, get the size from the initializing
expression directly if it is also a constant whose nominal type
has self-referential size.

From-SVN: r133831

16 years agoexpr.c (expand_var): Delete it.
Paolo Bonzini [Wed, 2 Apr 2008 10:01:43 +0000 (10:01 +0000)]
expr.c (expand_var): Delete it.

2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (expand_var): Delete it.
* expr.h (expand_var): Delete prototype.
* function.c (expand_function_start): Use expand_decl instead.
* cfgexpand.c (expand_one_static_var, expand_one_var): Don't call
langhook.

From-SVN: r133830

16 years agore PR rtl-optimization/35542 (fwprop only propagates one operand)
Andy Hutchinson [Wed, 2 Apr 2008 09:56:17 +0000 (09:56 +0000)]
re PR rtl-optimization/35542 (fwprop only propagates one operand)

2008-04-02  Andy Hutchinson <hutchinsonamdy@aim.com>

PR rtl-optimization/35542
* fwprop.c (forward_propagate_and_simplify): Replace
loc_reg_mentioned_in_p with reg_mentioned_p.

From-SVN: r133829

16 years agofwprop.c (PR_CAN_APPEAR, [...]): New.
Paolo Bonzini [Wed, 2 Apr 2008 09:53:34 +0000 (09:53 +0000)]
fwprop.c (PR_CAN_APPEAR, [...]): New.

2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

* fwprop.c (PR_CAN_APPEAR, PR_HANDLE_MEM): New.
(propagate_rtx_1): Handle PR_HANDLE_MEM.
(propagate_rtx): Pass PR_HANDLE_MEM if appropriate.
(varying_mem_p): Move above propagate_rtx.
(all_uses_available_at): Do not check MEMs.

From-SVN: r133828

16 years agotree-vrp.c (extract_code_and_val_from_cond): Remove.
Rafael Avila de Espindola [Wed, 2 Apr 2008 08:44:39 +0000 (08:44 +0000)]
tree-vrp.c (extract_code_and_val_from_cond): Remove.

2008-04-02  Rafael Espindola  <espindola@google.com>

* tree-vrp.c (extract_code_and_val_from_cond): Remove.
(register_edge_assert_for_2): Split the cond argument.
(register_edge_assert_for_1): Adjust for the change in
register_edge_assert_for_2.
(register_edge_assert_for): Split the cond argument.
(find_switch_asserts): Adjust for the change in
register_edge_assert_for.

From-SVN: r133827

16 years agoMAINTAINERS (Write After Approval): Add myself.
Kai Tietz [Wed, 2 Apr 2008 08:29:10 +0000 (10:29 +0200)]
MAINTAINERS (Write After Approval): Add myself.

2008-04-02  Kai Tietz  <kai.tietz@onvision.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133826

16 years agocygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte offsets for 64-bit mingw.
Kai Tietz [Wed, 2 Apr 2008 07:57:02 +0000 (07:57 +0000)]
cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte offsets for 64-bit mingw.

2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

* gcc/config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte
offsets for 64-bit mingw.
* gcc/config/i386/i386.c (ix86_pass_by_reference): Correct calling
abi for x86_64-pc-mingw.

From-SVN: r133825

16 years agoconfig.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.
Kai Tietz [Wed, 2 Apr 2008 07:48:07 +0000 (07:48 +0000)]
config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.

2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

* config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.

From-SVN: r133824

16 years agoMakefile.tpl (.NOTPARALLEL): Revert previous change.
Seongbae Park [Wed, 2 Apr 2008 02:29:33 +0000 (02:29 +0000)]
Makefile.tpl (.NOTPARALLEL): Revert previous change.

2008-04-01  Seongbae Park <seongbae.park@gmail.com>

* Makefile.tpl (.NOTPARALLEL): Revert previous change.
* Makefile.in (.NOTPARALLEL): Ditto.

From-SVN: r133815

16 years agore PR ada/33688 (Ada package Gnat.Sockets missing constant for IP_PKTINFO (patch))
John David Anglin [Wed, 2 Apr 2008 01:02:58 +0000 (01:02 +0000)]
re PR ada/33688 (Ada package Gnat.Sockets missing constant for IP_PKTINFO (patch))

PR ada/33688
* g-soccon-darwin.ads: Define new constant IP_PKTINFO.

From-SVN: r133814

16 years agoDaily bump.
GCC Administrator [Wed, 2 Apr 2008 00:17:30 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133812

16 years agore PR tree-optimization/35787 (Revision 133680 breaks 447.dealII)
Richard Guenther [Tue, 1 Apr 2008 22:59:21 +0000 (22:59 +0000)]
re PR tree-optimization/35787 (Revision 133680 breaks 447.dealII)

2008-04-02  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_assert): Make sure to not
produce range min/max with TREE_OVERFOW set.
If merging a anti-range and a range keep the anti-range if
the range covers all values of the type.
(register_edge_assert_for_2): Only allow sign-changing
conversions in detecting canonical range checks.  Also
register an assert for the unsigned name if useful.

PR tree-optimization/35787
* tree-vrp.c (vrp_val_max): New function.
(vrp_val_min): Likewise.
(vrp_val_is_max): Move earlier, use vrp_val_{min,max}.
(vrp_val_is_min): Likewise.
(supports_overflow_infinity): Use vrp_val_{min,max}.
(negative_overflow_infinity): Likewise.
(positive_overflow_infinity): Likewise.
(is_negative_overflow_infinity): Use vrp_val_is_{min,max}.
(is_positive_overflow_infinity): Likewise.
(is_overflow_infinity): Likewise.
(avoid_overflow_infinity): Use vrp_val_{min,max} and
vrp_val_is_{min,max}.
(set_and_canonicalize_value_range): Canonicalize anti-ranges
to ranges if possible.  Avoid empty ranges.

* gcc.dg/tree-ssa/vrp38.c: New testcase.
* gcc.dg/tree-ssa/vrp39.c: Likewise.

From-SVN: r133808

16 years agore PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)
John David Anglin [Tue, 1 Apr 2008 22:23:04 +0000 (22:23 +0000)]
re PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)

PR ada/33857
* env.c: Always include crt_externs.h if __APPLE__ is defined.
(__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined.

From-SVN: r133806

16 years agore PR middle-end/35705 (Symbol address check eliminated by C frontend.)
John David Anglin [Tue, 1 Apr 2008 22:14:41 +0000 (22:14 +0000)]
re PR middle-end/35705 (Symbol address check eliminated by C frontend.)

PR middle-end/35705
* fold-const.c (get_pointer_modulus_and_residue): Return modulus 1 if
the expression is a function address.

From-SVN: r133804

16 years agotrans-common.c (create_common): Add decl to function chain to preserve identifier...
George Helffrich [Tue, 1 Apr 2008 21:23:36 +0000 (21:23 +0000)]
trans-common.c (create_common): Add decl to function chain to preserve identifier scope in debug output.

* fortran/trans-common.c (create_common):  Add decl to function
chain to preserve identifier scope in debug output.

* dbxout.c: Emit .stabs debug info for Fortran COMMON block
variables as base symbol name + offset using N_BCOMM/N_ECOMM.
(is_fortran, dbxout_common_name, dbxout_common_check): New functions.
(dbxout_symbol_location): Transform N_LCSYM to N_GSYM for storage
in common.
(dbxout_syms): Check for COMMON-based symbol and wrap in
N_BCOMM/N_ECOMM stab bracket, including as many symbols as possible
in bracket for efficiency.

* dwarf2out.c: Emit DWARF debug info for Fortran COMMON block
using DW_TAG_common_block + member offset.
(add_pubname_string): New function.
(dw_expand_expr): New function to find block name and offset for
COMMON var.
(common_check): New function to check whether symbol in Fortran COMMON.
(gen_variable_die): If COMMON, use DW_TAG_common_block.

* testsuite/gcc.dg/debug/pr35154.c:  New test to check that non-Fortran
use of common is unchanged.

* testsuite/lib/gfortran-dg.exp:  New harness to compile Fortran progs
with all combinations of debug options available on target.
* testsuite/gfortran.dg/debug/debug.exp:  Ditto.
* testsuite/gfortran.dg/debug/trivial.f:  Ditto.
* testsuite/gfortran.dg/debug/pr35154-stabs.f:  New test case for
.stabs functionality.
* testsuite/gfortran.dg/debug/pr35154-dwarf2.f:  New test case for
DWARF functionality.

From-SVN: r133801

16 years agore PR c/35436 (ICE with attribute "format")
Volker Reichelt [Tue, 1 Apr 2008 20:33:37 +0000 (20:33 +0000)]
re PR c/35436 (ICE with attribute "format")

PR c/35436
* c-format.c (init_dynamic_gfc_info): Ignore invalid locus type.

* gcc.dg/format/gcc_gfc-2.c: New test.

From-SVN: r133800

16 years agov850.md (casesi): Remove if (0) code.
Ben Elliston [Tue, 1 Apr 2008 20:25:23 +0000 (20:25 +0000)]
v850.md (casesi): Remove if (0) code.

* config/v850/v850.md (casesi): Remove if (0) code.
* config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
* config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.

From-SVN: r133799

16 years agoi386.md (rex64suffix): New mode attribute.
Uros Bizjak [Tue, 1 Apr 2008 20:20:09 +0000 (22:20 +0200)]
i386.md (rex64suffix): New mode attribute.

        * config/i386/i386.md (rex64suffix): New mode attribute.
        (floathi<mode>2): Disable expander for SSE math.
        (*floathi<mode>2_1): New insn insn_and_split pattern.
        (*floathi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floathi<mode>2_i387): New macroized insn pattern.
        (float<SSEMODEI24:mode><X87MODEF:mode>2): New macroized expander.
        (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): New macroized
        insn_and_split pattern.
        (*floatsi<mode>2_vector_mixed_with_temp, *floatsi<mode>2_vector_mixed):
        New macroized instruction patterns and corresponding post-reload
        splitters.
        (*floatsi<mode>2_mixed_with_temp): New macroized instruction pattern
        and corresponding post-reload splitters.
        (*floatsi<mode>2_mixed_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_vector_sse_with_temp, *floatsi<mode>2_vector_sse): New
        macroized instruction patterns and corresponding post-reload splitters.
        (*floatsi<mode>2_sse_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_sse_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_i387): New macroized instruction patterns.

From-SVN: r133798

16 years agoi386.md (smaxmin): New.
H.J. Lu [Tue, 1 Apr 2008 19:12:31 +0000 (12:12 -0700)]
i386.md (smaxmin): New.

2008-04-01  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (smaxmin): New.
(umaxmin): Likewise.
(maxminiprefix): Likewise.
(maxminfprefix): Likewise.
(<code><mode>3): Likewise.
(smin<mode>3): Removed.
(smax<mode>3): Likewise.

* config/i386/mmx.md (mmx_<code>v2sf3): New.
(mmx_<code>v4hi3): Likewise.
(mmx_<code>v8qi3): Likewise.
(mmx_smaxv2sf3): Removed.
(mmx_sminv2sf3): Likewise.
(mmx_umaxv8qi3): Likewise.
(mmx_smaxv4hi3): Likewise.
(mmx_uminv8qi3): Likewise.
(mmx_sminv4hi3): Likewise.

* config/i386/sse.md (<addsub><mode>3): New.
(*<addsub><mode>3): Likewise.
(<sse>_vm<addsub><mode>3): Likewise.
(<maxmin><mode>3): Likewise.
(*<maxmin><mode>3_finite): Likewise.
(*<maxmin><mode>3): Likewise.
(<sse>_vm<maxmin><mode>3): Likewise.
(sse3_h<addsub>v4sf3): Likewise.
(sse3_h<addsub>v2df3): Likewise.
(<maxmin>v16qi3): Likewise.
(*<maxmin>v16qi3): Likewise.
(<maxmin>v8hi3): Likewise.
(*<maxmin>v8hi3): Likewise.
(*sse4_1_<maxmin><mode>3): Likewise.
(*sse4_1_<maxmin><mode>3): Likewise.
(add<mode>3): Removed.
(*add<mode>3): Likewise.
(<sse>_vmadd<mode>3): Likewise.
(sub<mode>3): Likewise.
(*sub<mode>3): Likewise.
(<sse>_vmsub<mode>3): Likewise.
(smin<mode>3): Likewise.
(*smin<mode>3_finite): Likewise.
(*smin<mode>3): Likewise.
(<sse>_vmsmin<mode>3): Likewise.
(smax<mode>3): Likewise.
(*smax<mode>3_finite): Likewise.
(*smax<mode>3): Likewise.
(<sse>_vmsmax<mode>3): Likewise.
(sse3_haddv4sf3): Likewise.
(sse3_haddv2df3): Likewise.
(sse3_hsubv4sf3): Likewise.
(sse3_hsubv2df3): Likewise.
(umaxv16qi3): Likewise.
(*umaxv16qi3): Likewise.
(smaxv8hi3): Likewise.
(*smaxv8hi3): Likewise.
(*sse4_1_smax<mode>3): Likewise.
(*sse4_1_umax<mode>3): Likewise.
(uminv16qi3): Likewise.
(*uminv16qi3): Likewise.
(sminv8hi3): Likewise.
(*sminv8hi3): Likewise.
(*sse4_1_smin<mode>3): Likewise.
(*sse4_1_umin<mode>3): Likewise.

From-SVN: r133797

16 years agotree-cfg.c (verify_expr): remove in_phi.
Rafael Avila de Espindola [Tue, 1 Apr 2008 18:40:16 +0000 (18:40 +0000)]
tree-cfg.c (verify_expr): remove in_phi.

2008-04-01  Rafael Espindola  <espindola@google.com>

* tree-cfg.c (verify_expr): remove in_phi.
        (verify_stmt): Don't call walk_tree with verify_expr. Use
is_gimple_min_invariant instead of is_gimple_val.

From-SVN: r133795

16 years agotexi2pod.pl: Handle @samp and @url inside verbatim blocks.
Joseph Myers [Tue, 1 Apr 2008 16:38:56 +0000 (17:38 +0100)]
texi2pod.pl: Handle @samp and @url inside verbatim blocks.

contrib:
* texi2pod.pl: Handle @samp and @url inside verbatim blocks.
Handle @heading.  Handle enumerated lists with starting numbers
and extra headings.

gcc:
* doc/include/gpl_v3.texi: Update for manpage generation.
* doc/gcc.texi, doc/gccint.texi: Include gpl_v3.texi instead of
gpl.texi.
* doc/sourcebuild.texi: Document gpl_v3.texi as well as gpl.texi.
* Makefile.in (TEXI_GCC_FILES, TEXI_GCCINT_FILES): Include
gpl_v3.texi instead of gpl.texi.
(gpl.pod): New.

gcc/fortran:
* gfortran.texi: Include gpl_v3.texi instead of gpl.texi
* Make-lang.in (GFORTRAN_TEXI): Include gpl_v3.texi instead of
gpl.texi.

gcc/java:
* gcj.texi: Include gpl_v3.texi instead of gpl.texi
* Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
gpl.texi.

From-SVN: r133794

16 years ago* MAINTAINERS (Write After Approval): Add myself.
Peter O'Gorman [Tue, 1 Apr 2008 15:53:22 +0000 (15:53 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133793

16 years agog-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO.
Andreas Jaeger [Tue, 1 Apr 2008 15:42:11 +0000 (17:42 +0200)]
g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO.

2008-04-01  Andreas Jaeger  <aj@suse.de>

        * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and
        IP_PKTINFO.

From-SVN: r133792

16 years agore PR pch/13675 (#including a precompiled header more than once in the same unit...
Jakub Jelinek [Tue, 1 Apr 2008 10:58:02 +0000 (12:58 +0200)]
re PR pch/13675 (#including a precompiled header more than once in the same unit fails)

PR pch/13675
* files.c (struct _cpp_file): Remove pch field.
(pch_open_file): Don't set file->pch, just file->pchname.
(should_stack_file): After pfile->cb.read_pch call
free pchname and clear pchname, don't close file->fd.
Test file->pchname instead of file->pch.  Don't close fd after cb.
(_cpp_stack_include): Test file->pchname instead of file->pch.

* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).

From-SVN: r133790

16 years agotree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
Rafael Avila de Espindola [Tue, 1 Apr 2008 09:11:11 +0000 (09:11 +0000)]
tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.

2008-04-01  Rafael Espindola  <espindola@google.com>

* tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
(extract_code_and_val_from_cond): Use
extract_code_and_val_from_cond_with_ops.

From-SVN: r133789

16 years agofunction.c (free_after_compilation): Free epilogue_delay_list.
Jan Hubicka [Tue, 1 Apr 2008 08:51:25 +0000 (10:51 +0200)]
function.c (free_after_compilation): Free epilogue_delay_list.

* function.c (free_after_compilation): Free epilogue_delay_list.
(prepare_function_start): Assert that previous compilation was freed.

From-SVN: r133787

16 years agore PR middle-end/35781 (Revision 133759 breaks ia64)
Jan Hubicka [Tue, 1 Apr 2008 08:41:14 +0000 (10:41 +0200)]
re PR middle-end/35781 (Revision 133759 breaks ia64)

PR middle-end/35781
* m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Use
rtl.emit instead cfun->emit.
* sparc/sparc.h (INIT_EXPANDERS): Likewise.
* ia64/ia64.h (INIT_EXPANDERS): Likewise.

Co-Authored-By: Andreas Tobler <andreast@gcc.gnu.org>
Co-Authored-By: James E Wilson <wilson@tuliptree.org>
From-SVN: r133786

16 years ago* doc/c-tree.texi (Function Basics): Fix grammatical error.
Ben Elliston [Tue, 1 Apr 2008 05:32:18 +0000 (05:32 +0000)]
* doc/c-tree.texi (Function Basics): Fix grammatical error.

From-SVN: r133785

16 years agoFix IA-64 enable-checking glibc ICE.
James E Wilson [Tue, 1 Apr 2008 03:04:15 +0000 (20:04 -0700)]
Fix IA-64 enable-checking glibc ICE.

* varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
consistently.

From-SVN: r133783

16 years agoDaily bump.
GCC Administrator [Tue, 1 Apr 2008 00:17:28 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133779

16 years agocommon.opt (fprofile-dir=, [...]): New options
Seongbae Park [Mon, 31 Mar 2008 21:52:10 +0000 (21:52 +0000)]
common.opt (fprofile-dir=, [...]): New options

gcc/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* common.opt (fprofile-dir=, fprofile-use=, fprofile-generate=):
New options
(fprofile-use): Add var flag_profile_use
* coverage.c (coverage_begin_output): Do not open a gcno file for output
only if -ftest-coverage is set.
Do not add getpwd() to gcda file path.
(build_gcov_info): Check the new flag
flag_profile_datafile_relative_path.
(coverage_init): Use profile_data_prefix.
Read profile counter only if flag_profile_use is set.
* opts.c (common_handle_option): New option fprofile-use=,
fprofile-dir=, fprofile-generate=.
* toplev.c (profile_data_prefix): New variable definition.
* toplev.h (profile_data_prefix): New declaration.
* doc/invoke.tex (Option Summary, Optimization Options):
Add new options.

gcc/testsuite/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* g++.db/bprob/bprob.exp: Do not check gcno files.
Use -fprofile-use for profile use.
* gcc.misc-tests/bprob.exp: Ditto.
* g++.dg/tree-pro/tree-prof.exp: Do not check gcno files.
* gcc.dg/matrix/matrix.exp: Ditto.
* gcc.dg/struct/struct-reorg.exp: Ditto.
* gcc.dg/tree-prof/tree-prof.exp: Ditto.
* gcc.dg/profile-dir-1.c: New test.
* gcc.dg/profile-dir-2.c: New test.
* gcc.dg/profile-dir-3.c: New test.

ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* Makefile.tpl (.NOTPARALLEL): Serialize stageprofile libiberty.
* Makefile.in (.NOTPARALLEL): Regenerate.

From-SVN: r133774

16 years agore PR target/35695 (-funroll-loops breaks inline float divide)
James E Wilson [Mon, 31 Mar 2008 19:51:50 +0000 (12:51 -0700)]
re PR target/35695 (-funroll-loops breaks inline float divide)

PR target/35695
* config/ia64/div.md (recip_approx_rf): Use UNSPEC not DIV.
* config/ia64/ia64.c (rtx_needs_barrier): Handle
UNSPEC_FR_RECIP_APPROX_RES.
* config/ia64/ia64.md (UNSPEC_FR_RECIP_APPROX_RES): Define.

From-SVN: r133772

16 years agore PR c/35750 (ICE with invalid old-style parameter declaration)
Volker Reichelt [Mon, 31 Mar 2008 19:37:45 +0000 (19:37 +0000)]
re PR c/35750 (ICE with invalid old-style parameter declaration)

PR c/35750
* c-decl.c (store_parm_decls_oldstyle): Skip invalid parameters.

* gcc.dg/old-style-param-1.c: New test.

From-SVN: r133771

16 years agog-table.adb, [...]: Fix comment typos.
Ralf Wildenhues [Mon, 31 Mar 2008 19:28:19 +0000 (19:28 +0000)]
g-table.adb, [...]: Fix comment typos.

gcc/ada/
* g-table.adb, g-tasloc.adb, g-traceb.ads,
g-trasym.adb, g-utf_32.adb, gen-soccon.c, gigi.h, gmem.c,
gnatbind.adb, gnatchop.adb, gnatcmd.adb,
gnatcmd.ads, gnatdll.adb, gnatfind.adb,
gnatlink.adb, gnatmem.adb, gprep.adb,
i-cstrea-vms.adb, i-cstrin.adb, i-pacdec.ads,
i-vxwork.ads, impunit.adb, init.c, initialize.c, inline.adb,
layout.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
lib-xref.ads, lib.adb, link.c, live.ads,
make.adb, makegpr.adb, makeutl.adb, math_lib.adb,
mdll-utl.adb, mdll.ads, memroot.adb, memroot.ads,
misc.c, mlib-prj.adb, mlib-tgt-hpux.adb,
mlib-tgt-linux.adb, mlib-tgt-tru64.adb, mlib-tgt.ads,
namet.adb, namet.h, nlists.adb, nlists.ads,
nlists.h, opt.ads, osint-b.ads, osint-c.adb,
osint-c.ads, osint.adb, osint.ads, output.ads,
par-ch10.adb, par-ch12.adb, par-ch2.adb, par-ch3.adb,
par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch9.adb,
par-endh.adb, par-labl.adb, par-prag.adb,
par-sync.adb, par-tchk.adb, par-util.adb,
par.adb, prep.adb, prep.ads, prepcomp.adb, prj-attr.ads,
prj-dect.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
prj-nmsc.ads, prj-pp.adb, prj-proc.adb,
prj-strt.ads, prj-tree.ads, prj.adb, prj.ads: Fix comment typos.

From-SVN: r133770

16 years agodecl.c (gnat_to_gnu_entity): Do not force a non-null size if it has overflowed.
Eric Botcazou [Mon, 31 Mar 2008 19:14:08 +0000 (19:14 +0000)]
decl.c (gnat_to_gnu_entity): Do not force a non-null size if it has overflowed.

* decl.c (gnat_to_gnu_entity) <object>: Do not force a non-null
size if it has overflowed.

From-SVN: r133768

16 years agore PR tree-optimization/30186 (accessing an element via a "pointer" on a vector does...
Andrew Pinski [Mon, 31 Mar 2008 18:22:05 +0000 (18:22 +0000)]
re PR tree-optimization/30186 (accessing an element via a "pointer" on a vector does not cause vec_extract to be used (non-zero index))

2008-03-31  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30186
        * fold-const.c (fold_indirect_ref_1): Support accessing non first
        element of the vector via a pointer.

2008-03-31  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30186
        * gcc.dg/tree-ssa/vector-1.c: New testcase.
        * gcc.c-torture/execute/vector-1.c: New testcase.
        * gcc.c-torture/execute/vector-2.c: New testcase.

From-SVN: r133766

16 years agotlink.c (scan_linker_output): Look for symbol name in single quotes.
Ian Lance Taylor [Mon, 31 Mar 2008 18:01:43 +0000 (18:01 +0000)]
tlink.c (scan_linker_output): Look for symbol name in single quotes.

* tlink.c (scan_linker_output): Look for symbol name in single
quotes.

From-SVN: r133764

16 years agoUpdate copyright date.
Ian Lance Taylor [Mon, 31 Mar 2008 17:44:22 +0000 (17:44 +0000)]
Update copyright date.

From-SVN: r133762

16 years agocp-demangle.c (d_substitution): Correct overflow check to avoid -fstrict-overflow...
Ian Lance Taylor [Mon, 31 Mar 2008 17:38:38 +0000 (17:38 +0000)]
cp-demangle.c (d_substitution): Correct overflow check to avoid -fstrict-overflow optimizations.

* cp-demangle.c (d_substitution): Correct overflow check to avoid
-fstrict-overflow optimizations.

From-SVN: r133761

16 years agobuiltins.c (expand_builtin_setjmp_receiver): Update call of get_arg_pointer_save_area.
Jan Hubicka [Mon, 31 Mar 2008 17:08:31 +0000 (19:08 +0200)]
builtins.c (expand_builtin_setjmp_receiver): Update call of get_arg_pointer_save_area.

* builtins.c (expand_builtin_setjmp_receiver): Update call of
get_arg_pointer_save_area.
* expr.c (init_expr): Just clear out rtl.expr.
* function.c (free_after_compilation): Clear out whole RTL structure.
(get_func_frame_size): Merge into ...
(get_frame_size): ... this one.
(assign_stack_local_1): Merge into ...
(assign_stack_local): ... this one.
(expand_function_end): Update call of get_arg_pointer_save_area.
(get_art_pointer_save_area): Remove cfun argument.
* function.h (emit_status): regno_pointer_align does not need length
attribute. Move x_regno_reg_rtx to ...
(regno_reg_rtx): ... new global array.
(reg_rtx_no, seq_stack, REGNO_POINTER_ALIGN): Update accestors.
(pending_stack_adjust, inhibit_defer_pop, saveregs_value,
apply_args_value, forced_labels, stack_pointer_delta): Update accestors.
(struct varasm_status): Move here from varasm.c
(struct rtl_data): New. Move here some fields from struct function.
(return_label, naked_return_label, stack_slot_list, parm_birth_insn,
frame_offset, stack_check_probe_note, arg_pointer_save_area,
used_temp_slots avail_temp_slots, temp_slot_level,
nonlocal_goto_handler_labels): Update accesstors.
(rtl): New global variable.
(struct function): Move some fileds to rtl_data.
(get_arg_pointer_save_area): Update prototype.
* emit-rtl.c (rtl): Declare.
(regno_reg_rtx): Declare.
(first_insn, last_insn, cur_insn_uid, last_location, first_label_num): Update.
(gen_reg_rtx): Update.
(init_virtual_regs): Do not tate emit_status argument.
(init_emit): Do not allocate emit.
* varasm.c (varasm_statuc): Move to function.h.
(n_deferred_constatns): Update accestor.
(init_varasm_status): Do not allocate varasm_status.
(force_const_mem, get_pool_size, output_constant_pool): Update.
* stmt.c (force_label_rtx): Do not use x_ prefixes.
(expand_nl_goto_receiver): Update get_arg_pointer_save_area.

From-SVN: r133759

16 years agoutils2.c (find_common_type): Document assumption on t1/t2 vs lhs/rhs.
Olivier Hainque [Mon, 31 Mar 2008 17:03:09 +0000 (17:03 +0000)]
utils2.c (find_common_type): Document assumption on t1/t2 vs lhs/rhs.

2008-03-31  Olivier Hainque  <hainque@adacore.com>
            Eric Botcazou  <botcazou@adacore.com>

        ada/
        * utils2.c (find_common_type): Document assumption on t1/t2 vs
        lhs/rhs. Force use of lhs type if smaller, whatever the modes.

        testsuite/
        * gnat.dg/assign_from_packed.adb: New testcase.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r133757

16 years agore PR rtl-optimization/35729 (const volatile variable access incorrectly hoisted...
Zdenek Dvorak [Mon, 31 Mar 2008 14:19:52 +0000 (16:19 +0200)]
re PR rtl-optimization/35729 (const volatile variable access incorrectly hoisted out of loop)

PR rtl-optimization/35729
* loop-invariant.c (check_maybe_invariant): Disallow volatile memory
references.

* gcc.dg/pr35729.c: New test.

From-SVN: r133755

16 years agoAdd missing ChangeLog entry for revision 133750.
H.J. Lu [Mon, 31 Mar 2008 13:39:41 +0000 (06:39 -0700)]
Add missing ChangeLog entry for revision 133750.

From-SVN: r133754

16 years agore PR target/32000 (x86 backend uses aligned load on unaligned memory)
H.J. Lu [Mon, 31 Mar 2008 13:32:38 +0000 (13:32 +0000)]
re PR target/32000 (x86 backend uses aligned load on unaligned memory)

gcc/

2008-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR target/32000
* config/i386/i386.md (*movti_internal): Emit unaligned SSE
load/store if memory is unaligned.
(*movti_rex64): Likewise.

* config/i386/predicates.md (misaligned_operand): New.

gcc/testsuite/

2008-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR target/32000
* gcc.target/i386/pr32000-1.c: New.

From-SVN: r133753

16 years agoRemoved, causes resource issues on some environments.
Arnaud Charlet [Mon, 31 Mar 2008 11:02:18 +0000 (13:02 +0200)]
Removed, causes resource issues on some environments.

From-SVN: r133750

16 years agore PR tree-optimization/35431 (ICE with complex integer, invalid gimple)
Andrew Pinski [Mon, 31 Mar 2008 09:45:53 +0000 (02:45 -0700)]
re PR tree-optimization/35431 (ICE with complex integer, invalid gimple)

2008-03-31  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/35431
        * tree-ssa-phiopt.c (conditional_replacement): Return early for
        complex types.

2008-03-31  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/35431
        * gcc.c-torture/compile/pr35431.c: New testcase.

From-SVN: r133749

16 years agoconstraints.md: Add 'j' constraint.
Jan Beulich [Mon, 31 Mar 2008 07:53:48 +0000 (07:53 +0000)]
constraints.md: Add 'j' constraint.

gcc/
2008-03-31  Jan Beulich  <jbeulich@novell.com>

* config/ia64/constraints.md: Add 'j' constraint.
* config/ia64/ia64.md (movsi_internal): Add addp4 case.
(movdi_internal): Likewise.

From-SVN: r133748