| Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r36312
|
|
* config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define.
(TARGET_LONG_DOUBLE_128): Define.
(SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128.
(LONG_DOUBLE_TYPE_SIZE): Redefine.
(MAX_LONG_DOUBLE_TYPE_SIZE): Define.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition
of __LONG_DOUBLE_128__.
(CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128
passed.
(CPP_LONGDOUBLE_DEFAULT_SPEC): Define.
(CPP_SYSV_DEFAULT_SPEC): Define.
(SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default.
(INIT_TARGET_OPTABS): Define.
From-SVN: r36311
|
|
* config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h.
(RS6000_UITRUNC): Likewise.
(INIT_TARGET_OPTABS): New macro.
* config/rs6000/rs6000.c (rs6000_trunc_used): Delete.
(trunc_defined): Delete.
(output_prolog): Don't output .extern definitions for fp->int
conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it.
* config/rs6000/rs6000.h (rs6000_trunc_used): Delete.
(trunc_defined): Delete.
(RS6000_ITRUNC): Moved to aix.h.
(RS6000_UITRUNC): Likewise.
* config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would
only emit a libcall.
(fixuns_truncdfsi2): Delete.
(trunc_call): Delete.
(trunc_call_rtl): Delete.
From-SVN: r36310
|
|
for decls with an asmspec.
* varasm.c (make_decl_rtl): Restore leading star on
DECL_ASSEMBLER_NAME set for decls with an asmspec.
* gcc.dg/asm-names.c: New test.
From-SVN: r36309
|
|
spurious error for '#pragma pack()'.
* c-pragma.c (handle_pragma_pack): Correct parsing logic so it
won't give a spurious error for '#pragma pack()'. Simplify
control flow for readability. 'reset' action is not necessary.
From-SVN: r36308
|
|
* defaults.h: Provide default definitions for: CHAR_TYPE_SIZE,
SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE,
DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED.
* cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c,
profile.c, sdbout.c, tradcif.y, tree.c, ch/decl.c, ch/timing.c,
cp/decl.c, cp/rtti.c, f/com.c, f/com.h, java/decl.c, java/expr.c:
Include defaults.h if not already included.
Don't define the above macros.
* Makefile.in, ch/Makefile.in, cp/Makefile.in, f/Makefile.in:
Update dependencies.
From-SVN: r36307
|
|
* c-common.h (add_stmt): Change prototype.
(RECHAIN_STMTS): New macro.
(CASE_LABEL_DECL): Likewise.
(genrtl_case_label): Change prototype.
(c_expand_start_case): Remove prototype.
(build_case_label): Change prototype.
(decl_constant_value): Declare.
* c-common.c (check_case_value): Handle C++'s extensions to C
semantics.
* c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL
field.
* c-parse.in (stmt): Adjust handling of return statements and case
laels.
* c-semantics.c (add_stmt): Return the new statement.
(genrtl_return_stmt): Take the RETURN_STMT as input, not the
returned expression. Directly generate RTL, rather than calling
c_expand_return.
(genrtl_switch_stmt): Don't call c_expand_start_case.
(build_case_label): Take the LABEL_DECL as input, too.
(genrtl_case_label): Just call add_case_node.
(expand_stmt): Adjust calls to genrtl_return_stmt and
genrtl_case_label.
* c-tree.h (c_expand_start_case): Declare.
* c-typeck.c (decl_constant_value): Give it external linkage.
(c_expand_return): Don't call expand_return or expand_null_return;
use genrtl_return_stmt instead.
* stmt.c (struct nesting): Remove num_ranges field.
(add_case_node): Give it external linkage.
(expand_start_case): Don't set num_ranges.
(expand_start_case_dummy): Don't clear it.
(pushcase): Rely on add_case_node to handle `default' labels.
(add_case_node): Handle `default' labels.
* tree.c (tree_int_cst_compare): New function.
* tree.h (tree_int_cst_compare): Declare.
(add_case_node): Likewise.
* cp-tree.h (push_switch): Change prototype.
(check_cp_case_value): Remove declaration.
(decl_constant_value): Likewise.
* decl.c (struct cp_switch): Add switch_stmt and cases.
(case_compare): New function.
(push_switch): Set switch_stmt. Initialize cases.
(pop_switch): Clean up cases.
(define_case_label): Rename to ...
(finish_case_label): ... this. Do semantic analysis for case
labels here.
(start_function): Correct comment.
* decl2.c (check_cp_case_value): Remove.
* expr.c (do_case): Remove.
* pt.c (tsubst_expr): Adjust call to finish_case_label.
* semantics.c (genrtl_do_poplevel): Remove declaration.
(RECHAIN_STMTS): Remove.
(finish_break_stmt): Use build_break_stmt.
(finish_continue_stmt): Use build_continue_stmt.
(finish_switch_cond): Adjust condition here, rater than in
c_expand_start_case.
(finish_case_label): Remove.
* typeck.c (c_expand_return): Remove.
(c_expand_start_case): Likewise.
From-SVN: r36305
|
|
* c-parse.in: Revert last change.
(init_reswords): Do not enter disabled keywords into the ridpointers
table, modulo objc weirdness.
(_yylex): Return the canonical spelling for a keyword.
From-SVN: r36303
|
|
For linux-elf don't define `__arm__'
From-SVN: r36302
|
|
* alias.c (find_base_term): Handle ADDRESSOF.
(memrefs_conflict_p): An ADDRESSOF doesn't conflict.
From-SVN: r36300
|
|
templates with many lines.
2000-09-10 Denis Chertykov <denisc@overta.ru>
* genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while
outputting templates with many lines.
From-SVN: r36299
|
|
whether 64-bit...
* libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD
to decide whether 64-bit support must be generated.
From-SVN: r36298
|
|
From-SVN: r36288
|
|
From-SVN: r36286
|
|
* cppmacro.c (check_trad_stringification): New function.
(save_expansion): If -Wtraditional, warn about stringification of
macro arguments.
testsuite:
* gcc.dg/cpp/tr-warn6.c: New test.
From-SVN: r36285
|
|
fields store_mems...
* loop.h (struct loop_mem_info): Move from loop.c
(struct loop_info): Add fields store_mems, mems, mems_idx,
mems_allocated, unknown_address_altered,
unknown_constant_address_altered, num_mem_sets, and
first_loop_store_insn.
* loop.c (loop_store_mems): Replace with field in loop_info struct.
(loop_mems, loop_mems_idx, loop_mems_allocated): Likewise.
(unknown_address_altered, unknown_constant_address_altered): Likewise.
(num_mem_sets): Likewise.
(replace_loop_mems, replace_loop_regs): New.
(struct loop_replace_args): New.
(load_mems): Use replace_loop_mems.
(try_copy_prop): Use replace_loop_regs.
(replace_loop_reg, replace_loop_mem): Use loop_replace_args structure.
From-SVN: r36284
|
|
From-SVN: r36282
|
|
operand_subword.
* recog.c (validate_replace_rtx_1): Correct MODE parameter in call
to operand_subword.
From-SVN: r36281
|
|
ADJUST_FIELD_ALIGN invocation.
* typeck.c (build_java_array_type): Correct first parameter
in ADJUST_FIELD_ALIGN invocation.
From-SVN: r36280
|
|
From-SVN: r36279
|
|
* loop.c (struct movables): New.
(num_movables): Move into struct movables.
(the_movables): Change type to struct movables.
(ignore_some_movables): Change struct movable arg to struct movables.
(force_movables, combine_movables, regs_match_p): Likewise.
(rtx_equal_for_loop_p, move_movables): Likewise.
(scan_loop): Change movables to be of type struct movables.
Replace last_movable with field in movables structure.
From-SVN: r36278
|
|
* c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS.
(init_pragma): Avoid warning if pfile happens to be unused.
* c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never
define init_pragma to nothing. Always prototype
init_pragma. Prototype dispatch_pragma if !USE_CPPLIB.
* c-lex.c (process_directive): Always call dispatch_pragma.
Initialize entering_c_header to 0.
From-SVN: r36277
|
|
* config/m68hc11/m68hc11.md: New file, machine description for
68HC11 & 68HC12.
* config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12.
* config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12.
* config/m68hc11/m68hc12.h: New file, definitions for 68HC12.
* config/m68hc11/m68hc11-protos.h: New file.
* config/m68hc11/m68hc11-crt0.S: New file, startup code.
* config/m68hc11/t-m68hc11-gas: New file, makefile fragment.
* config/m68hc11/xm-m68hc11.h: New file, target defs.
* config/m68hc11/larith.asm: New file, libgcc routines.
From-SVN: r36276
|
|
From-SVN: r36274
|
|
From-SVN: r36270
|
|
From-SVN: r36269
|
|
From-SVN: r36268
|
|
* recog.c (validate_replace_rtx_1): Fix confusion about equality
testing; simplify subregs of constants and nested subregs.
From-SVN: r36267
|
|
From-SVN: r36266
|
|
From-SVN: r36265
|
|
From-SVN: r36264
|
|
From-SVN: r36263
|
|
From-SVN: r36262
|
|
* config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa.
(__modsi3, __umodsi3): Likewise.
(__udivsi3): Likewise. Normalize the TFmode values.
From-SVN: r36261
|
|
* config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter
with a prototype.
* config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress
warning.
From-SVN: r36260
|
|
From-SVN: r36259
|
|
* sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove.
(cmpeqdi_t): Add output pattern.
(cmpeqdi_t+1): Don't split when not optimizing.
Restore proper splitting operation.
From-SVN: r36258
|
|
dispatch_pragma.
* c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS,
do not call dispatch_pragma.
From-SVN: r36257
|
|
* reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition
to CLASS_CANNOT_CHANGE_MODE.
* config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the
mode classes are different.
From-SVN: r36256
|
|
commit which removed cppulp.c.
* cpplib.h (struct cpp_options): Add user_label_prefix member,
left out of commit which removed cppulp.c.
From-SVN: r36254
|
|
CASE_DROPS_THROUGH.
* bb-reorder.c (fixup_reorder_chain): Add jump in new block
after switch for CASE_DROPS_THROUGH.
From-SVN: r36253
|
|
* loop.c (strength_reduce): Call check_ext_dependant_givs.
Properly extend the biv initial value for the giv.
(record_biv): Zero ext_dependant.
(record_giv): New argument ext_val. Update all callers.
(general_induction_var): Likewise.
(consec_sets_giv): Likewise.
(simplify_giv_expr): Likewise. Fill in ext_val if we find
a sign-extend, zero-extend, or truncate.
(combine_givs_p): Make sure modes are compatible.
(check_ext_dependant_givs): New.
(extend_value_for_giv): New.
* loop.h (struct induction): Add ext_dependant.
* unroll.c (iteration_info): Extend the biv initial value for the giv.
(find_splittable_givs): Likewise.
(final_giv_value): Likewise.
From-SVN: r36250
|
|
* c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
REGISTER_TARGET_PRAGMAS is defined. Duplicate some
definitions from cpplib.h.
* cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has
already done it.
* tm.texi: Document HANDLE_PRAGMA as no longer supported. Add
documentation for REGISTER_TARGET_PRAGMAS.
* c-lex.c: Include cpplib.h before c-pragma.h. Define a
default-pragma callback to implement -Wunknown-pragmas if
USE_CPPLIB.
* c-parse.in: Move all includes to top of file.
* c-pragma.c: Include cpplib.h before c-pragma.h. Include
tm_p.h.
(dispatch_pragma): Put the namespace in the -Wunknown-pragmas
warning.
(init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it.
* arm.h, arm-protos.h, arm.c,
c4x.h, c4x-protos.h, c4x.c,
h8300.h, h8300-protos.h, h8300.c,
i370.h, i370-protos.h, i370.c,
i960.h, i960-protos.h, i960.c,
sh.h, sh-protos.h, sh.c,
v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based
pragmata scheme to use REGISTER_TARGET_PRAGMAS instead.
* d30v.h: Don't mention HANDLE_PRAGMA in comment. Add
multiple include guard.
* i370.md (untyped_call): Use GEN_CALL.
(umodsi3): Remove unused variable.
* sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA.
* v850.c (output_move_single, output_move_double): Constify
return value.
(print_operand): Constify a char *.
* v850.h (struct small_memory_info): Constify name member.
From-SVN: r36249
|
|
* config/h8300.h: Fix comment typos.
* config/h8300/h8300.md: Likewise.
* config/h8300/lib1funcs.asm: Likewise.
From-SVN: r36248
|
|
* Makefile.in: Remove references to cppulp.{c,o}.
* cppinit.c (initialize_builtins, cpp_start_read,
cpp_handle_option): Update to use cpp_options structure.
* cppulp.c: Remove.
From-SVN: r36245
|
|
2000-09-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
* verify.c (merge_types): Load the types to merge if necessary.
(http://gcc.gnu.org/ml/gcc-patches/2000-09/msg00245.html)
From-SVN: r36243
|
|
* c-common.c (time_char_table): Allow %#b and %#h.
testsuite:
* gcc.dg/format-ext-3.c: Test %#b and %#h as formats that should
be accepted.
From-SVN: r36241
|
|
insn to some other place try...
* reorg.c (find_end_label): If the basic block reorder pass moves the
return insn to some other place try to locate it again and put our
end_of_function_label there.
* reorg.c (relax_delay_slots): Check if find_end_label created a
new label that invalidates the current optimazation.
From-SVN: r36237
|
|
From-SVN: r36236
|
|
* unroll.c (unroll_loop): Check for unconditional jumps
to loop continuation. Delete if n_iterations is 1.
(ujump_to_loop_cont): New routine.
From-SVN: r36235
|