Commit Graph

74 Commits

Author SHA1 Message Date
Kaveh R. Ghazi
dff01034e5 c-aux-info.c (data_type, [...]): Qualify a char* with the `const' keyword.
* c-aux-info.c (data_type, affix_data_type, gen_decl,
        gen_formal_list_for_type, gen_formal_list_for_func_def, gen_type):
        Qualify a char* with the `const' keyword.
        * c-common.c (declare_hidden_char_array, add_attribute, if_elt,
        declare_function_name, decl_attributes, format_char_info,
        check_format_info, binary_op_error): Likewise.
        * cexp.y (yyerror, error, pedwarn, warning, token): Likewise.
        * gcse.c (dump_hash_table): Likewise.
        * integrate.c (function_cannot_inline_p): Likewise
        * optabs.c: Include insn-config.h earlier.
        (init_libfuncs, init_integral_libfuncs, init_floating_libfuncs):
        Qualify a char* with the `const' keyword.
        * real.c (asctoe24, asctoe53, asctoe64, asctoe113, asctoe,
        asctoeg, mtherr, ereal_atof): Likewise.
        * real.h (ereal_atof): Likewise.
        * sbitmap.c (dump_sbitmap_vector): Likewise.
        * sbitmap.h (dump_sbitmap_vector): Likewise.
        * stmt.c (nesting, n_occurrences, expand_start_case): Likewise.
        * toplev.c (rest_of_compilation): Likewise.
        * tree.h (function_cannot_inline_p, expand_start_case): Likewise.

From-SVN: r25614
1999-03-06 05:34:26 +00:00
Jim Wilson
b5a3eb8445 Fix 64b-x-32b cross compiler breakage. Make alpha-x-m32r work again.
* emit-rtl.c (operand_subword): Sign extend REAL_VALUE_TO_TARGET_SINGLE
	result.
	* final.c (split_double): Sign extend REAL_VALUE_TO_TARGET_DOUBLE
	result.
	* real.c (endian): Delete sign extension code.
	* config/m32r/m32r.md (movsf_insn+1): REAL_VALUE_TO_TARGET_SINGLE call
	replaced with operand_subword call.

From-SVN: r25140
1999-02-10 09:28:24 -08:00
Donn Terry
9691f3a1ea * real.c (PUT_REAL) [XFmode]: Zero the balance of the structure.
From-SVN: r25081
1999-02-08 03:40:32 -08:00
Jeffrey A Law
ab87f8c8d1 Merge in gcc2 snapshot 19980929. See gcc/ChangeLog and gcc/FSFChangeLog for
details.

From-SVN: r24879
1999-01-26 18:43:17 -07:00
Jeff Law
fdf004cfcb Fix copyrights.
From-SVN: r24531
1999-01-06 13:02:36 -07:00
Geoff Keating
7735516c99 * real.c (mtherr): Print more reasonable warning messages.
From-SVN: r24502
1999-01-05 16:56:04 -07:00
Jim Wilson
c1c7db89c0 Eliminate compiler warnings.
* real.c (endian): Disable last change unless
	HOST_BITS_PER_WIDE_INT is greater than 32.

From-SVN: r24315
1998-12-14 08:30:48 -08:00
Jim Wilson
737e7965de Fix alpha-x-m32r-elf bugs.
* cse.c (simplify_unary_operation): Sign-extend constants when
	they have the most significant bit set for the target.
	* real.c (endian): Sign-extend 32 bit output values on a 64 bit
	host.
	* m32r/m32r.c (m32r_expand_prologue): Store pretend_size in
	HOST_WIDE_INT temporary before negating it.
	* m32r/m32r.md (movsi_insn+1): Use ~0xffff instead of 0xffff0000.

From-SVN: r24254
1998-12-10 09:21:35 -08:00
Ulrich Drepper
b6ca239df2 Fix indentation from last patch.
Remove trailing whitespace.

From-SVN: r24062
1998-12-02 10:44:51 +00:00
Ulrich Drepper
6f4d72224e c-common.c (declare_function_name): Declare predefinied variable `__func__'.
* c-common.c (declare_function_name): Declare predefinied variable
        `__func__'.
        * c-decl.c (flag_isoc9x): Set to 1 by default.
        (c_decode_option): Handle -std= option.  Remove -flang-isoc9x.
        (grokdeclarator): Always emit warning about implicit int for ISO C 9x.
        * c-parse.in: Allow constructors in ISO C 9x.
        Rewrite designator list handling.
        Allow [*] parameters.
        Don't warn about comma at end of enum definition for ISO C 9x.
        * cccp.c (c9x): New variable.
        (rest_extension): New variable.
        (print_help): Document new -std= option.
        (main): Recognize -std= option.  Set c9x appropriately.
        (create_definition): Recognize ISO C 9x vararg macros.
        * gcc.c (default_compilers): Adjust specs for -std options.
        (option_map): Add --std.
        (display_help): Document -std.
        * toplev.c (documented_lang_options): Add -std and remove
        -flang-isoc9x.
        * c-lex.c (yylex): Recognize hex FP constants and call REAL_VALUE_ATOF
        or REAL_VALUE_HTOF based on base of the constants.
        * fold-const.c (real_hex_to_f): New function.  Replacement function
        for hex FP conversion if REAL_ARITHMETIC is not defined.
        * real.c (asctoeg): Add handling of hex FP constants.
        * real.h: Define REAL_VALUE_HTOF if necessary using ereal_atof or
        real_hex_to_f.

Co-Authored-By: Richard Henderson <rth@cygnus.com>
Co-Authored-By: Stephen L Moshier <moshier@world.std.com>

From-SVN: r24049
1998-12-01 13:05:17 -08:00
Stephen L Moshier
a46f03ea15 emit-rtl.c (gen_lowpart_common): Remove earlier change.
* emit-rtl.c (gen_lowpart_common): Remove earlier change.
        * real.c (make_nan): Make SIGN arg actually specify the sign bit.

From-SVN: r23874
1998-11-25 11:06:07 -07:00
Herman A.J. ten Brugge
506b012c6f real.c (emdnorm and etoasc): Disable round to even for c4x target to be compatible with TI compiler.
* real.c (emdnorm and etoasc): Disable round to even for c4x target
        to be compatible with TI compiler.

From-SVN: r23072
1998-10-13 18:07:47 -06:00
Kaveh R. Ghazi
c84e271261 Warning fixes:
* Makefile.in (gencheck.o): Depend on gansidecl.h.
	* c-common.c (print_char_table): Add missing initializers.
	(scan_char_table): Likewise.
	(time_char_table): Likewise.
	* c-decl.c (c_decode_option): Mark parameter `argc' with
	ATTRIBUTE_UNUSED.
	(declare_parm_level): Mark parameter `definition_flag' with
	ATTRIBUTE_UNUSED.
	* c-lex.c (readescape): Use `(unsigned)1' in shift.
	(yylex): Likewise.  Cast `sizeof' to an (int) when comparing
	against one.
	* calls.c (store_one_arg): Remove unused parameter `fndecl'.  All
	callers changed.
	(emit_call_1): Mark parameters `fndecl' and `funtype' with
	ATTRIBUTE_UNUSED.
	(expand_call): Cast result of MIN() to (unsigned int) when
	comparing against an unsigned value.
	* cccp.c (pcfinclude): Remove unused parameter `limit'.  All
	callers changed.
	(make_definition): Remove unused parameter `op'.  All callers
	changed.
	(create_definition): Cast REST_EXTENSION_LENGTH to (long) when
	comparing against the result of pointer arithmetic.
	* config/mips/mips.h (FUNCTION_ARG_BOUNDARY): Cast to (unsigned)
	when comparing against one.
	* dwarf2out.c (dwarf2out_frame_debug): Cast REGNO() and
 	HARD_FRAME_POINTER_REGNUM to (unsigned) when comparing against
 	one.
	(output_die): Move variable `i' into the scope in which it is
	used.  Change its type to `unsigned'.
	(output_die): Cast the result of `strlen' to (int) when passing it
	to ASM_OUTPUT_ASCII().
	(output_pubnames): Likewise.
	(output_line_info): Likewise.
	* emit-rtl.c (global_rtl): Add missing initializers.
	* explow.c (promote_mode): Mark parameter `for_call' with
	ATTRIBUTE_UNUSED.
	* expmed.c (expand_shift): Cast the result of GET_MODE_BITSIZE to
 	`unsigned HOST_WIDE_INT' when comparing against one.
	(synth_mult): Change type of variable `cost' to int.
	(emit_store_flag): Use `(unsigned HOST_WIDE_INT) 1' in shift.
	* expr.c (copy_blkmode_from_reg): Cast BITS_PER_WORD to (unsigned)
	when comparing against one.
	(get_inner_reference): Change variable `alignment' to unsigned.
	(expand_expr): Cast the result of GET_MODE_ALIGNMENT to (unsigned
	int) when comparing against one.
	(expand_builtin_setjmp): Change type of variable `i' to size_t.
	* fold-const.c (div_and_round_double): Cast BASE to
	(HOST_WIDE_INT) when comparing against one.
	* gencheck.c: Include gansidecl.h.
	(main): Mark parameter `argv' with ATTRIBUTE_UNUSED.
	* optabs.c (gen_cond_trap): Mark parameters `code', `op2' and
	`tcode' with ATTRIBUTE_UNUSED.
	* real.c (edivm): Cast constant value to (unsigned long) in
	expression compared against an unsigned value.
	* stmt.c (expand_return): Cast BITS_PER_WORD to (unsigned) when
	comparing against one.
	(expand_end_case): Cast CASE_VALUES_THRESHOLD to (unsigned int)
	when comparing against one.
	* stor-layout.c (mode_for_size): Cast MAX_FIXED_MODE_SIZE to
	(unsigned int) when comparing against one.  Likewise for
	GET_MODE_BITSIZE.
	(smallest_mode_for_size): Likewise.
	(save_storage_status): Mark parameter `p' with ATTRIBUTE_UNUSED.
	(restore_storage_status): Likewise.
	* toplev.c (debug_args): Add missing initializer.
	(f_options): Spelling correction.  Add missing initializers.
	(documented_lang_options): Likewise.
	(debug_end_source_file): Mark parameter `lineno' with
	ATTRIBUTE_UNUSED.
	* tree.c (valid_machine_attribute): Mark parameters `attr_args',
	`decl' and `type' with ATTRIBUTE_UNUSED.
	* varasm.c (decode_reg_name): Cast `sizeof' expression to (int)
	when comparing against one.
	(assemble_variable): Mark parameter `top_level' with
	ATTRIBUTE_UNUSED.
	(assemble_external_libcall): Mark parameter `fun' with
	ATTRIBUTE_UNUSED.
	(output_constant_pool): Mark parameters `fnname' and `fndecl' with
	ATTRIBUTE_UNUSED.

From-SVN: r23054
1998-10-13 15:25:25 +00:00
Michael Hayes
eba0c7243e real.c (c4xtoe): Remove unused variables.
* real.c (c4xtoe): Remove unused variables.  Add some missing parens.
        (toc4x): Similarly.

From-SVN: r22909
1998-10-07 21:29:02 -06:00
Jeff Law
9ec36da574 * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
details.

From-SVN: r20808
1998-06-29 15:40:49 -06:00
Andreas Schwab
7a87758dfb m68k.h: Declare more functions used in macros.
* m68k.h: Declare more functions used in macros.
        (REG_CLASS_CONTENTS): Completely embrace initializer.
        * m68k.md (adddi3, subdi3): Add abort call to avoid warning
        about returning no value.
        * cse.c (find_best_addr): Declare p and found_better only if
        needed.
        * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
        * dwarfout.c (string_length_attribute): #if 0 away.
        * function.c (expand_function_end): Define varible blktramp only
        if needed.
        * jump.c (find_insert_position): Define only if !HAVE_cc0.
        * loop.c (combine_givs_p): Define variable tem only if needed.
        * real.c: Comment out unused functions eabs, eround,
        e{24,53,64,113}toasc and eiinfin.

From-SVN: r19998
1998-05-23 17:14:57 -06:00
Robert Lipe
10f0ad3d49 toplev.h: New file.
Wed May  6 06:35:38 1998  Robert Lipe  <robertl@dgii.com>
        * toplev.h: New file.   Protypes for functions in toplev.c.
        * tree.h, rtl.h: Deleted protos for functions in toplev.c.
        * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
        c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
        convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
        function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
        reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
        varasm.c: include it.

From-SVN: r19564
1998-05-06 04:54:01 +00:00
Jeff Law
f5963e6170 * Check in merge from gcc2. See ChangeLog.12 for details.
From-SVN: r19553
1998-05-05 17:18:02 -06:00
Kaveh R. Ghazi
670ee92097 Major cutover to using system.h:
* Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
        c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
        caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
        dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
        expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
        integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
        prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
        reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
        rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
        tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
        on system.h.
        * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
        c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
        caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
        dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
        expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
        integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
        prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
        reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
        rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
        stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
        xcoffout.c: Include system.h.  Organize include ordering so
        that stdarg/varargs comes before other system headers.  Remove
        spurious casts of functions assured of a prototype in system.h.

From-SVN: r18726
1998-03-20 14:58:42 +00:00
Manfred Hollstein
8468c4a458 In gcc/:
* bitmap.c (bitmap_element_allocate): Remove unused parameter;
	change callers accordingly.
	* cplus-dem.c (arm_special): Remove unused parameter work in prototype
	and definition; change all callers accordingly.
	* except.c (init_eh): Avoid assignment of unused return value of
	build_pointer_type; cast it to void, instead, and remove unused
	variable type.
	* gcc.c (lang_specific_driver): Define prototype only #ifdef
	LANG_SPECIFIC_DRIVER.
	(temp_names): Define only #ifdef MKTEMP_EACH_FILE.
	* genoutput.c (output_epilogue): Initialize next_name to 0.
	* real.c (efrexp): #if 0 prototype and function definition.
	(eremain): Likewise.
	(uditoe): Likewise.
	(ditoe): Likewise.
	(etoudi): Likewise.
	(etodi): Likewise.
	(esqrt): Likewise.
	* reload.c (push_secondary_reload): Define prototype only
	#ifdef HAVE_SECONDARY_RELOADS.
	* varasm.c (assemble_static_space): Define rounded only
	#ifndef ASM_OUTPUT_ALIGNED_LOCAL.
In gcc/cp/:
	* call.c (default_parm_conversions): Remove prototype definition.
	(build_method_call): Remove unused variable result.
	* cvt.c (ocp_convert): Remove unused variable conversion.
	* decl2.c (ambiguous_decl): Add explicit parameter definition for name.
	* except.c (do_unwind): #if 0 definition of unused variables fcall
	and next_pc.
	* expr.c (extract_scalar_init): #if 0 prototype and function definition.
	* init.c (expand_aggr_init_1): Remove unused variable init_type.
	(build_new_1): Remove unused variable t.
	* pt.c (instantiate_class_template): Remove unused variable newtag;
	cast called function return value to void.
	(do_decl_instantiation): Remove unused variables name and fn.
	* tree.c (get_type_decl): Add default return to shut up compiler from
	complaining control reaches end of non-void function.
	* typeck.c (build_x_conditional_expr): Remove unused variable rval.

From-SVN: r18495
1998-03-12 00:29:02 +00:00
Jeff Law
e9a25f70a0 Update mainline egcs to gcc2 snapshot 971021.
From-SVN: r16278
1997-11-02 14:19:36 -07:00
Jeffrey A Law
7bb6fbd1c6 version.c: Bump version to "gcc-3.0.0 970802 experimental".
* version.c: Bump version to "gcc-3.0.0 970802 experimental".

        * gcc.info*: Rebuilt.

        * COPYING.g77, README.g77: New files.
        * real.c (ereal_unto_float, ereal_unto_double): New functions.
        * real.h (ereal_unto_float, ereal_unto_double): Declare them.
        (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
Get g77 to work with gcc3.

From-SVN: r14776
1997-08-12 11:13:25 -06:00
Richard Kenner
cccc8091bc (exact_real_inverse): New function, if REAL_ARITHMETIC.
From-SVN: r13002
1996-10-23 10:20:10 -04:00
Mike Stump
0f41302f47 formatting tweaks
From-SVN: r12390
1996-07-03 22:07:53 +00:00
Richard Kenner
25a0074233 (asctoeg): `0.0eX' is zero, regardless of the exponent X.
From-SVN: r12373
1996-06-28 18:37:08 -04:00
Richard Kenner
2dedbe1f31 (eadd1): Check for overflow on X plus X.
From-SVN: r11782
1996-04-15 08:06:07 -04:00
Richard Kenner
48e73d63cc (ereal_from_{int,uint}): New arg, MODE.
From-SVN: r11763
1996-04-14 08:53:43 -04:00
Richard Kenner
f250a0bc1c (e64toe): Properly distinguish between NaN and infinity bit patterns for real-words-big-endian targets.
(e64toe): Properly distinguish between NaN and infinity bit patterns
for real-words-big-endian targets.
(endian): Add two explicit casts.
(e64toe): Support ARM extended precision fp format.  Check negative
infinities properly for NaNs.
(toe64): Support ARM extended precision fp format.

From-SVN: r11688
1996-04-10 17:19:42 -04:00
Richard Kenner
de3a68a106 (significand_size): Don't test the modes, but their sizes.
From-SVN: r11415
1996-03-04 08:57:43 -05:00
Richard Kenner
d56390c488 (ediv, emul): Set sign bit of IEEE -0.0 result.
From-SVN: r10244
1995-08-15 17:57:41 -04:00
Richard Kenner
e99215a3b5 Update FSF address.
From-SVN: r9964
1995-06-15 08:04:37 -04:00
Richard Kenner
9faa82d8c0 Fix typos in comments.
From-SVN: r9712
1995-05-16 08:39:54 -04:00
Richard Kenner
d730ef29fb (emdnorm, toe64, etoe64): Significand of Intel long double denormals
is shifted down one bit.

From-SVN: r9578
1995-05-05 07:10:06 -04:00
Richard Kenner
8c35bbc594 (REAL_WORDS_BIG_ENDIAN): New macro.
(REAL_WORDS_BIG_ENDIAN): New macro.  Define as either
FLOAT_WORDS_BIG_ENDIAN or HOST_FLOAT_WORDS_BIG_ENDIAN.  Use it instead
of FLOAT_WORDS_BIG_ENDIAN.
(m16m, edivm, emulm): Change `short' to `EMUSHORT', and `long' to `EMULONG'.
Clean up comments.

From-SVN: r9027
1995-02-22 07:05:12 -05:00
Richard Kenner
43b55a678a Update comments.
From-SVN: r8815
1995-01-25 14:50:28 -05:00
Richard Kenner
82e974d406 (toe64): Use Intel bit pattern for little-endian XFmode Inf.
(e64toe): Likewise; also check the exponent field properly.

From-SVN: r8734
1995-01-12 07:17:56 -05:00
Ian Lance Taylor
f76b9db287 Check target endianness at run time, not compile time
From-SVN: r8470
1994-11-16 21:10:09 +00:00
Richard Kenner
4ba46f43cb (GET_REAL, PUT_REAL): Cast args to bcopy to char *.
From-SVN: r8390
1994-11-05 14:02:41 -05:00
Richard Kenner
bfbc641633 Treat HFmode like SFmode, for now.
From-SVN: r7576
1994-06-28 05:15:25 -04:00
Richard Kenner
8ddae3488d (significand_size): New function.
From-SVN: r7387
1994-05-30 10:34:11 -04:00
Richard Kenner
60e6116515 (ereal_from_int, ereal_to_int, etarsingle): Correct signed/unsigned discrepancies.
(ereal_from_int, ereal_to_int, etarsingle):  Correct signed/unsigned
discrepancies.
(ereal_from_double): Avoid "right shift count too big" warning in previous
change.

From-SVN: r7313
1994-05-16 17:51:44 -04:00
Richard Kenner
04ae9e4ccd (ereal_from_float, .._double): Change arg from long to HOST_WIDE_INT
and unpack the HOST_WIDE_INTs.

From-SVN: r7312
1994-05-16 17:44:34 -04:00
Richard Kenner
c92d992a81 (m16m): Change first arg to int; all callers changed.
From-SVN: r7285
1994-05-12 18:50:45 -04:00
Richard Kenner
008f0d3631 (etoe53, etoe24): Make all occurrences static.
From-SVN: r7144
1994-04-24 11:27:52 -04:00
Richard Kenner
defb5dab7d Upate comments and copyright notice.
From-SVN: r7130
1994-04-21 18:10:47 -04:00
Richard Kenner
a035305579 Make most functions static and add prototypes for all static functions.
(GET_REAL, PUT_REAL): Cast parameter to proper pointer type in some
cases; use unsigned array.

From-SVN: r7120
1994-04-21 15:33:15 -04:00
Richard Kenner
281bb5e4ea (target_negative): -0 counts as negative.
From-SVN: r6735
1994-03-09 18:47:18 -05:00
Richard Kenner
0de689b7ad (real_value_truncate): If requested mode is not supported, return the
unmodified input instead of aborting.

From-SVN: r6568
1994-02-15 19:36:35 -05:00
Richard Kenner
c764eafd0d (eifrac): If FIXUNS_TRUNC_LIKE_FIX_TRUNC, convert on positive overflow
as if unsigned.

From-SVN: r6554
1994-02-14 19:14:45 -05:00
Richard Kenner
29e11dabe9 (earith, ereal_negate, eneg, eisneg, enan, emovo, esub, eadd, ediv):
Propagate the sign of NaNs, so that e.g. -(NaN) evaluates to -NaN.
(emul, eremain, e53toe, e64toe, e113toe, e24toe, esqrt): Likewise.
(make_nan): New arg specifies sign of NaN.  All callers changed.
(eiisneg): New function.
(esqrt): Compute sqrt(-0.0) to be -0.0, not 0.0.

From-SVN: r6511
1994-02-08 20:17:59 -05:00