OSDN Git Service

* builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ef8624f..2d5ec00 100644 (file)
@@ -1,3 +1,235 @@
+2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
+       BT_LONGDOUBLE_PTR, BT_FN_FLOAT_FLOAT_FLOATPTR,
+       BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
+       BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
+       BT_FN_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_INTPTR,
+       BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
+       BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
+       BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
+       BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
+       BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
+       BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR): New.
+       * builtins.def (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL,
+       BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO,
+       BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS,
+       BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): New.
+       * tree.c: Assign new type_nodes.
+       * tree.h (tree_index): Add TI_FLOAT_PTR_TYPE, TI_DOUBLE_PTR_TYPE,
+       TI_LONG_DOUBLE_PTR_TYPE, TI_INTEGER_PTR_TYPE.
+       (float_ptr_type_node, double_ptr_type_node,
+       long_double_ptr_type_node, integer_ptr_type_node): New type_nodes. 
+       
+       * doc/extend.texi: Document new builtins.
+
+2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-types.def (BT_FN_FLOAT_INT_FLOAT,
+       BT_FN_DOUBLE_INT_DOUBLE, BT_FN_LONGDOUBLE_INT_LONGDOUBLE): New.
+       
+       * builtins.def (BUILT_IN_ERF, BUILT_IN_ERFC, BUILT_IN_ERFCF,
+       BUILT_IN_ERFCL, BUILT_IN_ERFF, BUILT_IN_ERFL, BUILT_IN_GAMMA,
+       BUILT_IN_GAMMAF, BUILT_IN_GAMMAL, BUILT_IN_J0, BUILT_IN_J0F,
+       BUILT_IN_J0L, BUILT_IN_J1, BUILT_IN_J1F, BUILT_IN_J1L,
+       BUILT_IN_JN, BUILT_IN_JNF, BUILT_IN_JNL, BUILT_IN_LGAMMA,
+       BUILT_IN_LGAMMAF, BUILT_IN_LGAMMAL, BUILT_IN_SIGNIFICAND,
+       BUILT_IN_SIGNIFICANDF, BUILT_IN_SIGNIFICANDL, BUILT_IN_TGAMMA,
+       BUILT_IN_TGAMMAF, BUILT_IN_TGAMMAL, BUILT_IN_Y0, BUILT_IN_Y0F,
+       BUILT_IN_Y0L, BUILT_IN_Y1, BUILT_IN_Y1F, BUILT_IN_Y1L,
+       BUILT_IN_YN, BUILT_IN_YNF, BUILT_IN_YNL): New.
+       
+       * doc/extend.texi: Document new builtins.
+
+2003-08-28  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * fixinc/mkfixinc.sh: Remove special case code for unsupported
+       variants of i?86, powerpcle, and thumb. 
+       * fixinc/mkfixinc.sh: Remove special case code for unsupported
+       arm and hppa variants.
+
+2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-types.def (BT_FN_INT_FLOAT, BT_FN_INT_DOUBLE,
+       BT_FN_INT_LONGDOUBLE, BT_FN_LONG_FLOAT, BT_FN_LONG_DOUBLE,
+       BT_FN_LONG_LONGDOUBLE, BT_FN_LONGLONG_FLOAT,
+       BT_FN_LONGLONG_DOUBLE, BT_FN_LONGLONG_LONGDOUBLE,
+       BT_FN_FLOAT_FLOAT_LONGDOUBLE, BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
+       BT_FN_FLOAT_FLOAT_INT, BT_FN_DOUBLE_DOUBLE_INT,
+       BT_FN_LONGDOUBLE_LONGDOUBLE_INT, BT_FN_FLOAT_FLOAT_LONG,
+       BT_FN_DOUBLE_DOUBLE_LONG, BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
+       BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
+       BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE): New.
+
+       * builtins.def (BUILT_IN_ACOS, BUILT_IN_ACOSF, BUILT_IN_ACOSH,
+       BUILT_IN_ACOSHF, BUILT_IN_ACOSHL, BUILT_IN_ACOSL, BUILT_IN_ASIN,
+       BUILT_IN_ASINF, BUILT_IN_ASINH, BUILT_IN_ASINHF, BUILT_IN_ASINHL,
+       BUILT_IN_ASINL, BUILT_IN_ATANH, BUILT_IN_ATANHF, BUILT_IN_ATANHL,
+       BUILT_IN_CBRT, BUILT_IN_CBRTF, BUILT_IN_CBRTL, BUILT_IN_COPYSIGN,
+       BUILT_IN_COPYSIGNF, BUILT_IN_COPYSIGNL, BUILT_IN_COSH,
+       BUILT_IN_COSHF, BUILT_IN_COSHL, BUILT_IN_DREM, BUILT_IN_DREMF,
+       BUILT_IN_DREML, BUILT_IN_EXP10, BUILT_IN_EXP10F, BUILT_IN_EXP10L,
+       BUILT_IN_EXP2, BUILT_IN_EXP2F, BUILT_IN_EXP2L, BUILT_IN_EXPM1,
+       BUILT_IN_EXPM1F, BUILT_IN_EXPM1L, BUILT_IN_FDIM, BUILT_IN_FDIMF,
+       BUILT_IN_FDIML, BUILT_IN_FMA, BUILT_IN_FMAF, BUILT_IN_FMAL,
+       BUILT_IN_FMAX, BUILT_IN_FMAXF, BUILT_IN_FMAXL, BUILT_IN_FMIN,
+       BUILT_IN_FMINF, BUILT_IN_FMINL, BUILT_IN_HYPOT, BUILT_IN_HYPOTF,
+       BUILT_IN_HYPOTL, BUILT_IN_ILOGB, BUILT_IN_ILOGBF, BUILT_IN_ILOGBL,
+       BUILT_IN_LDEXP, BUILT_IN_LDEXPF, BUILT_IN_LDEXPL, BUILT_IN_LLRINT,
+       BUILT_IN_LLRINTF, BUILT_IN_LLRINTL, BUILT_IN_LLROUND,
+       BUILT_IN_LLROUNDF, BUILT_IN_LLROUNDL, BUILT_IN_LOG10,
+       BUILT_IN_LOG10F, BUILT_IN_LOG10L, BUILT_IN_LOG1P, BUILT_IN_LOG1PF,
+       BUILT_IN_LOG1PL, BUILT_IN_LOG2, BUILT_IN_LOG2F, BUILT_IN_LOG2L,
+       BUILT_IN_LOGB, BUILT_IN_LOGBF, BUILT_IN_LOGBL, BUILT_IN_LRINT,
+       BUILT_IN_LRINTF, BUILT_IN_LRINTL, BUILT_IN_LROUND,
+       BUILT_IN_LROUNDF, BUILT_IN_LROUNDL, BUILT_IN_NEXTAFTER,
+       BUILT_IN_NEXTAFTERF, BUILT_IN_NEXTAFTERL, BUILT_IN_NEXTTOWARD,
+       BUILT_IN_NEXTTOWARDF, BUILT_IN_NEXTTOWARDL, BUILT_IN_POW10,
+       BUILT_IN_POW10F, BUILT_IN_POW10L, BUILT_IN_REMAINDER,
+       BUILT_IN_REMAINDERF, BUILT_IN_REMAINDERL, BUILT_IN_RINT,
+       BUILT_IN_RINTF, BUILT_IN_RINTL, BUILT_IN_SCALB, BUILT_IN_SCALBF,
+       BUILT_IN_SCALBL, BUILT_IN_SCALBLN, BUILT_IN_SCALBLNF,
+       BUILT_IN_SCALBLNL, BUILT_IN_SCALBN, BUILT_IN_SCALBNF,
+       BUILT_IN_SCALBNL, BUILT_IN_SINH, BUILT_IN_SINHF, BUILT_IN_SINHL,
+       BUILT_IN_TANH, BUILT_IN_TANHF, BUILT_IN_TANHL): New.
+
+       * doc/extend.texi: Document new builtins.
+
+2003-08-28  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (legitmate_constant_p): Use LARL on
+       zSeries machines even in 31-bit addressing mode.
+       (legitimate_reload_constant_p): Likewise.
+       (legitimize_pic_address): Likewise.
+       (legitimize_tls_address): Likewise.
+       (s390_split_branches): Likewise.
+       (s390_dump_pool): Likewise.
+       (s390_mainpool_finish): Likewise.
+       (s390_chunkify_start): Likewise.
+       (s390_select_rtx_section): Likewise.
+       * config/s390/s390.md ("doloop_si"): Likewise.
+       ("pool_start_31", "pool_end_31"): Likewise.
+       ("pool_start_64", "pool_end_64"): Likewise.
+       ("main_base_31_small", "main_base_31_large"): Likewise.
+       ("main_base_64"): Likewise.
+       ("reload_base_31", "reload_base_64"): Likewise.
+       ("*movsi_larl"): New insn.
+       ("cjump", "icjump"): Use long branches on zSeries machines.
+       ("jump"): Likewise.
+       ("call"): Use BRASL on zSeries machines.
+       ("call_value", "call_value_tls"): Likewise.
+       ("brasl", "bras", "basr_64", "basr_31", "bas_64", "bas_31"): Remove 
+       and replace by ...
+       ("*bras", "*brasl", "*basr") ... these new insns.
+       ("brasl_r", "bras_r", "basr_64_r", "basr_31_r", "bas_64_r", 
+       "bas_31_r"): Remove and replace by ...
+       ("*bras_r", "*brasl_r", "*basr_r") ... these new insns.
+       ("brasl_tls", "bras_tls", "basr_64_tls", "basr_31_tls", 
+       "bas_64_tls", "bas_31_tls"): Remove and replace by ...
+       ("*bras_tls", "*brasl_tls", "*basr_tls") ... these new insns.
+       ("*return_si", "*return_di"): Remove and replace by ...
+       ("*return"): ... this new insn.
+       ("rotlsi3"): Allow on zSeries machines.
+
+       * config/s390/s390.c (legitimize_reload_constant_p): Use
+       LL/LH type instructions in z/Architecture mode.
+       * config/s390/s390.md ("*movsi_lli"): Likewise.
+       ("*andsi3_ni", "*andhi3_ni", "*andqi3_ni"): Likewise.
+       ("*iorsi3_ni", "*iorhi3_ni", "*iorqi3_ni"): Likewise.
+       ("*extendqisi2"): Use LB in z/Architecture mode.
+       ("*zero_extendqisi2_64", "*zero_extendqisi2_31"): Use LLGC in 
+       z/Architecture mode.
+       ("zero_extendqihi2", "*zero_extendqihi2_64", "*zero_extendqihi2_31"): 
+       Likewise.
+       
+       * config/s390/s390.md ("*tmdi_ext"): Allow in both 64-bit
+       and 31-bit mode.
+       ("ptr_extend"): Allow only in 64-bit mode.
+
+2003-08-27  Daniel Jacobowitz  <drow@mvista.com>
+
+       * gcc.c (STANDARD_EXEC_PREFIX, STANDARD_STARTFILE_PREFIX)
+       (TOOLDIR_BASE_PREFIX, STANDARD_BINDIR_PREFIX): Remove unnecessary
+       definitions.
+       (main): Only use standard_startfile_prefix if native.
+       * doc/tm.texi (STANDARD_STARTFILE_PREFIX): Update.
+
+2003-08-27  Per Bothner  <pbothner@apple.com>
+
+       * cpperror.c (print_location):  Don't check for !pfile->buffer.  That
+       test fails following my 08-21 change, and it seems unnecessary anyway.
+       (cpp_error):  Likewise.
+
+2003-08-27  Jason Merrill  <jason@redhat.com>
+
+       * real.c (do_multiply): Initialize with memset.
+
+2003-08-27  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * gcov.c (typedef struct arc_info): New field cs_count.
+       (accumulate_line_counts): Find cycles correctly.
+
+2003-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (struct machine_function): Remove member
+       literal_pool_label.
+       (s390_optimize_prolog): Replace TEMP_REG argument with 
+       TEMP_USED and BASE_USED.  Do not check get_pool_size ().
+       (general_s_operand): Accept all immediates before reload if 
+       ALLOW_IMMEDIATE.  If not ALLOW_IMMEDIATE, reject literal pool 
+       references.
+       (s390_output_symbolic_const): Remove UNSPEC_LTREL_OFFSET handling.
+       (find_constant_pool_ref): Ignore UNSPECV_POOL_ENTRY insns.
+       (s390_alloc_pool): New function.
+       (s390_new_pool): Call it.
+       (s390_dump_pool): Add REMOTE_LABEL argument.
+       (s390_chunkify_start): Add BASE_REG argument.  Do not check 
+       get_pool_size ().
+       (s390_chunkify_finish): Add BASE_REG argument.  Adapt 
+       s390_dump_pool call.
+       (s390_pool_count, s390_nr_constants): Remove.
+       (s390_output_constant_pool): Remove.
+       (s390_mainpool_start): New function.
+       (s390_mainpool_finish): New function.
+       (s390_mainpool_cancel): New function.
+       (s390_reorg): Implement main literal pool handling.
+       (s390_emit_prologue): Emit main_pool placeholder instead of 
+       literal_pool_31 / literal_pool_64 insns.
+       * config/s390/s390.h (s390_pool_count, s390_nr_constants): Remove.
+       (ASM_OUTPUT_POOL_PROLOGUE, ASM_OUTPUT_SPECIAL_POOL_ENTRY): Remove.
+       * config/s390/s390.md (UNSPEC_MAIN_BASE): New symbolic constant.
+       ("main_base_31_small", "main_base_31_large"): New insns.
+       ("main_base_64",  "main_pool"): New insns.
+       ("literal_pool_31", "literal_pool_64"): Remove.
+
+2003-08-27  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * fixinc/inclhack.def (ptx_netswap): New disabled fix, ported from
+       fixinc.ptx.
+       * fixinc/inclhack.def (undefine_null):  Don't generate \r characters.
+       Prettify a little.
+       * fixinc/fixincl.x: Regenerate.
+
+2003-08-27  Richard Earnshaw  <rearnsha@arm.com>
+
+       * lib1funcs.asm (L_ieee754_sp): New.  Include ieee754-sf.S.
+       (L_ieee754_dp): New.  Include ieee754-df.S.
+       * arm/ieee754-sf.S: Rework to allow interworking, calling from Thumb,
+       and compilation in apcs-26 mode.
+       * arm/ieee754-df.S: Likewise.
+       * t-arm-elf (DPBIT, FPBIT, fp-bit.c dp-bit.c): Delete rules
+       (LIB1ASMFUNCS): Add _ieee754_sp and _ieee754_dp targets.
+
+2003-08-27  Nicolas Pitre  <nico@cam.org>
+
+       * arm/ieee754-sf.S: New.
+       * arm/ieee754-df.S: New.
+
+2003-08-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * builtins.c (expand_builtin_expect_jump): Save pending_stack_adjust
+       and restore it if returning NULL.
+
 2003-08-27  Richard Sandiford  <rsandifo@redhat.com>
 
        * calls.c (initialize_argument_information): If an argument has no
@@ -685,7 +917,7 @@ Wed Aug 20 12:08:55 CEST 2003  Jan Hubicka  <jh@suse.cz>
        * config/s390/s390.h: Prefix #include of s390/fixdfdi.h
        [under IN_LIBGCC2] with config/.
 
-2003-08-21  Per Bothner  <bothner@pbothner.com>
+2003-08-21  Per Bothner  <pbothner@apple.com>
 
        * cppfiles.c (stack_file):  Correctly pass return_at_eof parameter
        to cpp_push_buffer.