Doug Evans [Fri, 28 Apr 1995 01:09:12 +0000 (01:09 +0000)]
(decl_attributes): Always continue if attribute not found.
From-SVN: r9522
Jim Wilson [Fri, 28 Apr 1995 01:08:43 +0000 (18:08 -0700)]
(ashiftrt_r4_*): Rewrite for efficiency.
(ashrsi3, lshrsi3, lshrsi3): Add.
From-SVN: r9521
Doug Evans [Fri, 28 Apr 1995 01:08:30 +0000 (01:08 +0000)]
(attribute_hash_list): New function.
(build_type_attribute_variant): Call it.
(valid_machine_attribute): Handle attributes with arguments.
(is_attribute_p): New function.
(lookup_attribute): New function.
(attribute_in_list): Deleted.
(attribute_list_contained): Check TREE_PURPOSE and TREE_VALUE.
From-SVN: r9520
Doug Evans [Fri, 28 Apr 1995 01:07:33 +0000 (01:07 +0000)]
(valid_machine_attribute): Add prototype.
(is_attribute_p, lookup_attribute): Likewise.
From-SVN: r9519
Jim Wilson [Fri, 28 Apr 1995 01:07:22 +0000 (18:07 -0700)]
(LIB1ASMFUNCS): Add new functions.
(LIBGCC2_CFLAGS): Delete.
(LIB2FUNCS_EXTRA): Remove deleted files.
(ashlsi3.c, ashrsi3.c, lshrsi3.c): Remove rules for deleted files.
From-SVN: r9518
Jim Wilson [Fri, 28 Apr 1995 01:06:19 +0000 (18:06 -0700)]
Clean up white space.
From-SVN: r9517
Jim Wilson [Thu, 27 Apr 1995 22:50:50 +0000 (15:50 -0700)]
(expand_return): When returning BLKmode structure...
(expand_return): When returning BLKmode structure, use
operand_subword instead of doing arithmetic on the register number.
Also, for structures smaller than word_mode, copy it into a word_mode
temporary and then subreg it.
From-SVN: r9516
Jim Wilson [Thu, 27 Apr 1995 22:46:53 +0000 (15:46 -0700)]
Delete two define_peepholes which print `bad peephole'.
From-SVN: r9515
Torbjorn Granlund [Thu, 27 Apr 1995 20:18:13 +0000 (20:18 +0000)]
(shorten_branches): For non-optimizing compiles, break after first pass.
From-SVN: r9514
Torbjorn Granlund [Thu, 27 Apr 1995 20:17:35 +0000 (20:17 +0000)]
(rest_of_compilation): Call shorten_branches even when !optimize.
From-SVN: r9513
Richard Kenner [Thu, 27 Apr 1995 18:40:02 +0000 (14:40 -0400)]
Update comments.
From-SVN: r9512
Michael Meissner [Thu, 27 Apr 1995 18:35:38 +0000 (18:35 +0000)]
Support for pre-BFD versions of Linux ld.
From-SVN: r9511
Richard Kenner [Thu, 27 Apr 1995 18:31:14 +0000 (14:31 -0400)]
(do_include): Fix minor memory leak.
From-SVN: r9510
Richard Kenner [Thu, 27 Apr 1995 18:28:46 +0000 (14:28 -0400)]
(struct argdata): Remove unused `comments' member.
(macarg): Don't set `comments' member.
From-SVN: r9509
Michael Meissner [Thu, 27 Apr 1995 18:27:28 +0000 (18:27 +0000)]
Support for pre-BFD versions of Linux ld.
From-SVN: r9508
Richard Kenner [Thu, 27 Apr 1995 15:43:23 +0000 (11:43 -0400)]
Don't include <sys/stat.h> twice.
(cpp_grow_buffer, init_parse_file): Cast {xmalloc,xrealloc} for token_buffer
to U_CHAR* instead of char*.
From-SVN: r9507
Richard Kenner [Thu, 27 Apr 1995 15:42:46 +0000 (11:42 -0400)]
Don't include <sys/stat.h> twice.
From-SVN: r9506
Richard Kenner [Thu, 27 Apr 1995 13:22:29 +0000 (09:22 -0400)]
(i[34]86:*:3.2:*) test for /usr/options/cb.name before calling uname.
From-SVN: r9505
Richard Kenner [Thu, 27 Apr 1995 12:56:36 +0000 (08:56 -0400)]
(valid_machine_attribute): Update last change.
From-SVN: r9504
Richard Kenner [Thu, 27 Apr 1995 12:05:51 +0000 (08:05 -0400)]
Initial revision
From-SVN: r9503
Richard Kenner [Thu, 27 Apr 1995 11:08:53 +0000 (07:08 -0400)]
(collect_expansion): Assume leading white space already removed.
Don't allocate unnecessary space for expansion.
From-SVN: r9502
Richard Kenner [Thu, 27 Apr 1995 11:03:46 +0000 (07:03 -0400)]
(deps_output): Don't generate overly long output lines.
Do not invoke self recursively with spacer == 0; this simplifies the code a
bit.
From-SVN: r9501
Richard Kenner [Wed, 26 Apr 1995 23:18:37 +0000 (19:18 -0400)]
(OBJC_VERSION): Version 7.
(build_objc_string_object): Build a full declaration if not using the next
runtime.
(objc_add_static_instance): New function.
(init_module_descriptor): Add reference to static instances table.
(build_module_descriptor): Add field for static instances table.
(get_objc_string_decl): New function.
(generate_static_references): New function.
(finish_objc): Call generate_static_references if needed.
From-SVN: r9500
Richard Kenner [Wed, 26 Apr 1995 23:17:42 +0000 (19:17 -0400)]
(finish_decl_top_level): New function.
From-SVN: r9499
Richard Kenner [Wed, 26 Apr 1995 23:17:07 +0000 (19:17 -0400)]
(finish_decl_top): New declaration.
From-SVN: r9498
Richard Kenner [Wed, 26 Apr 1995 23:16:05 +0000 (19:16 -0400)]
Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.
From-SVN: r9497
Richard Kenner [Wed, 26 Apr 1995 23:08:38 +0000 (19:08 -0400)]
(OBJC_O): Added bare-bones implementation of NXConstantString.
From-SVN: r9496
Richard Kenner [Wed, 26 Apr 1995 23:08:15 +0000 (19:08 -0400)]
Initial revision
From-SVN: r9495
Richard Kenner [Wed, 26 Apr 1995 23:07:00 +0000 (19:07 -0400)]
Changed Class * to Class in order to match NEXTSTEP and OpenStep runtime.
Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.
(OBJC_VERSION): Version 7.
(objc_init_statics): New function.
(__objc_exec_class): Invoke objc_init_statics if needed.
From-SVN: r9494
Richard Kenner [Wed, 26 Apr 1995 23:05:45 +0000 (19:05 -0400)]
Changed Class * to Class in order to match NEXTSTEP and OpenStep runtime.
Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.
(objc_static_instances): New struct to record static instances of a certain
class.
(objc_module): New tag STATICS to point to the table of objc_statics_instances.
From-SVN: r9493
Richard Kenner [Wed, 26 Apr 1995 22:19:38 +0000 (18:19 -0400)]
(ashrsi2_31): Don't use dead_or_set_p after reload.
From-SVN: r9492
Richard Kenner [Wed, 26 Apr 1995 22:16:50 +0000 (18:16 -0400)]
Remove bad peepholes that improperly use dead_or_set_p.
From-SVN: r9491
Richard Kenner [Wed, 26 Apr 1995 22:04:28 +0000 (18:04 -0400)]
Treat _MACHINE_ANSI_H_ like _ANSI_H_.
From-SVN: r9490
Richard Kenner [Wed, 26 Apr 1995 21:56:19 +0000 (17:56 -0400)]
(expand_function_end): Warn about unused parms if both -Wunused and -W.
From-SVN: r9489
Richard Kenner [Wed, 26 Apr 1995 21:25:21 +0000 (17:25 -0400)]
(print_node): Print TYPE_PACKED.
From-SVN: r9488
Richard Kenner [Wed, 26 Apr 1995 21:24:51 +0000 (17:24 -0400)]
Update number of shift/reduce conflicts.
(structsp): Pass attribute arg to finish_struct.
Support attributes on enums and pass to finish_enum.
From-SVN: r9487
Richard Kenner [Wed, 26 Apr 1995 21:24:01 +0000 (17:24 -0400)]
(finish_struct): Add ATTRIBUTES argument, call decl_attributes and set DECL_PACKED from TYPE_PACKED.
(finish_struct): Add ATTRIBUTES argument, call decl_attributes and set
DECL_PACKED from TYPE_PACKED.
(finish_enum): Add ATTRIBUTES argument, call decl_attributes, and make enum
narrow if TYPE_PACKED.
From-SVN: r9486
Richard Kenner [Wed, 26 Apr 1995 21:23:10 +0000 (17:23 -0400)]
(init_attributes): Don't require decl for A_PACKED.
(decl_attributes, case A_PACKED): Set TYPE_PACKED for type.
From-SVN: r9485
Richard Kenner [Wed, 26 Apr 1995 21:22:41 +0000 (17:22 -0400)]
(finish_enum, finish_struct): Add ATTRIBUTES argument.
From-SVN: r9484
Richard Kenner [Wed, 26 Apr 1995 21:22:19 +0000 (17:22 -0400)]
(TYPE_PARSE_INFO): Delete unused field.
(TYPE_PACKED): Add new macro.
(struct tree_type): Delete unused field `parse_info'.
Add new field `packed_flag'.
From-SVN: r9483
Michael Meissner [Wed, 26 Apr 1995 20:45:43 +0000 (20:45 +0000)]
Support Linux elf and a.out systems; Add parisc support
From-SVN: r9482
Jim Wilson [Wed, 26 Apr 1995 19:16:21 +0000 (12:16 -0700)]
(NEGTF2_LIBCALL): Define.
(INIT_TARGET_OPTABS): Add support for all TFmode *_LIBCALL macros.
From-SVN: r9481
Jim Wilson [Wed, 26 Apr 1995 19:13:00 +0000 (12:13 -0700)]
(init_optabs): Delete all uses of undocumented TImode and
TFmode *_LIBCALL macros.
From-SVN: r9480
Jim Wilson [Wed, 26 Apr 1995 18:08:54 +0000 (11:08 -0700)]
(simplify_rtx, case TRUNCATE): Add. Use force_to_mode.
(force_to_mode, case AND): Allow some simplifications when GET_MODE (x)
has more bits than HOST_BITS_PER_WIDE_INT.
From-SVN: r9479
Jim Wilson [Wed, 26 Apr 1995 18:06:52 +0000 (11:06 -0700)]
(truncdiqi2+[456]): Add patterns to simplify ZERO_EXTEND
of a TRUNCATE.
From-SVN: r9478
Doug Evans [Wed, 26 Apr 1995 17:01:05 +0000 (17:01 +0000)]
(memop): Deleted.
(splittable_symbolic_memory_operand): New function.
(splittable_immediate_memory_operand): New function.
From-SVN: r9477
Doug Evans [Wed, 26 Apr 1995 16:59:55 +0000 (16:59 +0000)]
(memop define_splits): Rewrite to not use memop.
Preserve MEM_IN_STRUCT_P, MEM_VOLATILE_P, RTX_UNCHANGING_P bits.
From-SVN: r9476
Richard Kenner [Wed, 26 Apr 1995 16:29:48 +0000 (12:29 -0400)]
(expand_builtin, case BUILT_IN_CONSTANT_P): A pointer to a string
constant is a constant.
From-SVN: r9475
Richard Kenner [Wed, 26 Apr 1995 16:28:49 +0000 (12:28 -0400)]
(init_decl_processing): Don't give builtin__constant_p an argument
type.
From-SVN: r9474
Richard Kenner [Wed, 26 Apr 1995 14:27:47 +0000 (10:27 -0400)]
(CRAY*Y-MP:*:*:*): New entry.
From-SVN: r9473
Richard Kenner [Wed, 26 Apr 1995 12:35:12 +0000 (08:35 -0400)]
(output_init_element): Constructor is not simple if a bitfield is
being assigned a non-integer.
From-SVN: r9472
Richard Kenner [Wed, 26 Apr 1995 12:04:28 +0000 (08:04 -0400)]
(push_init_level): Update constructor_depth when we push spelling
level.
From-SVN: r9471
Richard Kenner [Wed, 26 Apr 1995 02:48:27 +0000 (22:48 -0400)]
(alpha_builtin_saveregs): Refine last change to work for both stdarg
and varargs.
From-SVN: r9470
Jeff Law [Tue, 25 Apr 1995 23:49:45 +0000 (17:49 -0600)]
pa.c (emit_move_sequence): Handle function label arithmetic for PIC code generation too.
* pa.c (emit_move_sequence): Handle function label arithmetic for
PIC code generation too.
From-SVN: r9469
Jim Wilson [Tue, 25 Apr 1995 23:36:38 +0000 (16:36 -0700)]
(struct move_by_pieces): Add to_struct and from_struct fields.
(move_by_pieces): Set to_struct and from_struct fields.
(move_by_pieces_1): Set MEM_IN_STRUCT_P of to1 and from1.
(expand_builtin, case BUILT_IN_MEMCPY): New variable type.
Set MEM_IN_STRUCT_P of src_mem and dest_mem.
From-SVN: r9468
Jim Wilson [Tue, 25 Apr 1995 23:21:32 +0000 (16:21 -0700)]
(clean): Delete libgcc1-asm.a.
From-SVN: r9467
Jim Wilson [Tue, 25 Apr 1995 23:18:01 +0000 (16:18 -0700)]
(CPP_SPEC): Define.
From-SVN: r9466
Jim Wilson [Tue, 25 Apr 1995 23:11:10 +0000 (16:11 -0700)]
(pushdecl): Don't test DECL_EXTERNAL when deciding whether
to register a duplicate decl in the current block.
From-SVN: r9465
Richard Kenner [Tue, 25 Apr 1995 23:10:10 +0000 (19:10 -0400)]
(untyped_call): Make it return a complex double.
From-SVN: r9464
Richard Kenner [Tue, 25 Apr 1995 23:09:34 +0000 (19:09 -0400)]
(gen_highpart): Add comment about broken implementation.
From-SVN: r9463
Richard Kenner [Tue, 25 Apr 1995 23:09:01 +0000 (19:09 -0400)]
(expand_builtin_apply_args): If STACK_REGS is defined...
(expand_builtin_apply_args): If STACK_REGS is defined, generate USE
insns before the function body, thus showing which registers are
filled with parameters.
Reverse order of saving registers, more compact code for i387.
(expand_builtin_apply): Likewise.
From-SVN: r9462
Richard Kenner [Tue, 25 Apr 1995 23:08:04 +0000 (19:08 -0400)]
(assign_parms): If STACK_REGS is defined...
(assign_parms): If STACK_REGS is defined, generate USE insns before
the function body, thus showing which registers are filled with
parameters.
From-SVN: r9461
Richard Kenner [Tue, 25 Apr 1995 23:07:43 +0000 (19:07 -0400)]
Add copyright for 1995.
From-SVN: r9460
Richard Kenner [Tue, 25 Apr 1995 23:06:57 +0000 (19:06 -0400)]
(current_function_returns_real): Deleted (unused).
(FP_mode_reg): Trimmed to a smaller size, less overhead.
(FP_MODE_REG): New macro over which FP_mode_reg will be accessed.
(mark_regs_pat, straighten_stack): New functions.
(reg_to_stack): Amend initialisation of FP_mode_reg.
Mark FP registers mentioned in USE insns before NOTE_INSN_FUNCTION_BEG.
(get_true_reg): Eliminate FP subreg accesses in favour of the actual FP
register in use.
(record_reg_life_pat): Make it work on SUBREGs as well. Make use of the new
mark_regs_pat function. Handle USE insns if called unnested.
(record_reg_life): Don't check for QImode again, we know that it is there.
Process CALL_INSNs like all other insns, they might `use' some FP argument
registers if register passing.
(stack_result_p): Changed in stack_result and returning an rtx.
(stack_reg_life_analysis): Take a new stackentry state argument.
Use stack_result and the rtx to mark using mark_regs_pat. This ensures that
types that need multiple FP registers are handled correctly
Delete the no_live_regs shortcut to save space.
Use stackentry state to determine filled registers.
(replace_reg): Accept COMPLEX_FLOAT as well.
(move_for_stack_reg): Optimise away some pointer dereferencing.
(subst_stack_regs): Make sure the stack is in the right order and of the right
size for register passing.
(goto_block_pat): Make sure the stack is in the right order to return possible
multi-register values from the function.
(convert_regs): Fix comment about CALL_INSN, it's no longer valid.
Make sure the stack is of the right size and in the right order to return
possible multi-register values from the function.
From-SVN: r9459
Richard Kenner [Tue, 25 Apr 1995 22:57:39 +0000 (18:57 -0400)]
(attrib): Permit null-length argument list to attributes.
From-SVN: r9458
Richard Kenner [Tue, 25 Apr 1995 22:52:37 +0000 (18:52 -0400)]
(attribute_in_list): New declaration.
From-SVN: r9457
Richard Kenner [Tue, 25 Apr 1995 22:52:18 +0000 (18:52 -0400)]
(valid_machine_attribute): Use new function attribute_in_list...
(valid_machine_attribute): Use new function attribute_in_list, makes
sure type_attribute_variants are reused even when attributes have
parameters.
Assign any new type to TREE_TYPE (decl).
(attribute_in_list): New function.
(attribute_list_contained): Use it.
From-SVN: r9456
Jim Wilson [Tue, 25 Apr 1995 22:39:42 +0000 (15:39 -0700)]
(main): Pass INIT_ENVIRONMENT to putenv.
From-SVN: r9455
Richard Kenner [Tue, 25 Apr 1995 22:39:11 +0000 (18:39 -0400)]
(chain_member_purpose): Make similar to chain_member_value.
From-SVN: r9454
Jim Wilson [Tue, 25 Apr 1995 22:38:15 +0000 (15:38 -0700)]
(INIT_ENVIRONMENT): Define as string not putenv call.
From-SVN: r9453
Jim Wilson [Tue, 25 Apr 1995 22:25:28 +0000 (15:25 -0700)]
(expand_return): When returning BLKmode structure in
registers, copy it to a psuedo-reg instead of to hard registers.
From-SVN: r9452
Richard Kenner [Tue, 25 Apr 1995 22:08:27 +0000 (18:08 -0400)]
Make-lang.in.
From-SVN: r9451
Richard Kenner [Tue, 25 Apr 1995 22:07:11 +0000 (18:07 -0400)]
Change "realclean" to "maintainer-clean".
From-SVN: r9450
Richard Kenner [Tue, 25 Apr 1995 21:47:34 +0000 (17:47 -0400)]
Removed __NetBSD__ from conditional.
Declare strerror if HAVE_STRERROR is defined; otherwise declare
sys_errlist and sys_nerr.
(my_strerror): New function.
(errno): Don't define if already defined as a macro.
From-SVN: r9449
Richard Kenner [Tue, 25 Apr 1995 21:43:07 +0000 (17:43 -0400)]
(current_file_function_operand): Return false if profiling.
From-SVN: r9448
Richard Kenner [Tue, 25 Apr 1995 21:05:37 +0000 (17:05 -0400)]
(convert_move): Don't access a hard reg in an invalid mode when doing
a truncation.
From-SVN: r9447
Richard Kenner [Tue, 25 Apr 1995 20:36:31 +0000 (16:36 -0400)]
(CONST_OK_FOR_LETTER_P, case 'L'): Reject 0x80000000.
From-SVN: r9446
Richard Kenner [Tue, 25 Apr 1995 20:36:05 +0000 (16:36 -0400)]
(add_operand): Test for exactly the constants allowed by the
constraints.
From-SVN: r9445
Richard Kenner [Tue, 25 Apr 1995 20:06:42 +0000 (16:06 -0400)]
(start_decl): New args for attributes; call decl_attributes.
From-SVN: r9444
Richard Kenner [Tue, 25 Apr 1995 20:06:19 +0000 (16:06 -0400)]
(start_decl): Two new tree parameters.
From-SVN: r9443
Richard Kenner [Tue, 25 Apr 1995 20:06:00 +0000 (16:06 -0400)]
(initdcl, notype_initdcl): Pass attributes to start_decl; delete call
to decl_attributes.
From-SVN: r9442
Michael Meissner [Tue, 25 Apr 1995 19:46:08 +0000 (19:46 +0000)]
Do not allow DFs to use 2 register addressing if -msoft-float
From-SVN: r9441
Richard Kenner [Tue, 25 Apr 1995 19:45:30 +0000 (15:45 -0400)]
(divhi3, udivhi3, modhi3, umodhi3): Deleted these insns plus some surrounding trash.
(divhi3, udivhi3, modhi3, umodhi3): Deleted these insns plus some
surrounding trash.
(divmodhi4, udivmodhi4): Added these insns.
From-SVN: r9440
Richard Kenner [Tue, 25 Apr 1995 17:30:35 +0000 (13:30 -0400)]
(duplicate_decls): Don't look at TYPE_ACTUAL_ARG_TYPES if it is not
set.
From-SVN: r9439
Richard Kenner [Tue, 25 Apr 1995 16:42:00 +0000 (12:42 -0400)]
Initial revision
From-SVN: r9438
Richard Kenner [Tue, 25 Apr 1995 14:12:34 +0000 (10:12 -0400)]
(alpha_builtin_saveregs): Add to incoming args addr if less than 6
named args, not less than or equal to.
From-SVN: r9437
Richard Kenner [Mon, 24 Apr 1995 23:44:34 +0000 (19:44 -0400)]
(fatal, error): Make first arg const to avoid warning.
From-SVN: r9436
Richard Kenner [Mon, 24 Apr 1995 23:22:18 +0000 (19:22 -0400)]
(expand_end_bindings): Write a BARRIER after call to abort in nonlocal
handler.
From-SVN: r9435
Richard Kenner [Mon, 24 Apr 1995 19:25:06 +0000 (15:25 -0400)]
(expand_decl_init): Call preserve_temp_slots to keep around any temp
whose address was taken.
From-SVN: r9434
Mike Stump [Mon, 24 Apr 1995 17:27:46 +0000 (17:27 +0000)]
67th Cygnus<->FSF merge
From-SVN: r9433
Torbjorn Granlund [Fri, 21 Apr 1995 23:39:23 +0000 (23:39 +0000)]
(call_internal_reg): Fix typos in length calculation.
(call_value_internal_reg): Likewise.
From-SVN: r9432
Roland McGrath [Fri, 21 Apr 1995 17:18:23 +0000 (17:18 +0000)]
(STANDARD_INCLUDE_DIR): New macro.
From-SVN: r9431
Roland McGrath [Fri, 21 Apr 1995 17:17:09 +0000 (17:17 +0000)]
(STANDARD_INCLUDE_DIR): Macro moved to generic gnu.h.
From-SVN: r9430
Richard Kenner [Fri, 21 Apr 1995 12:23:45 +0000 (08:23 -0400)]
(default_compilers): Pass -I to gnat1.
From-SVN: r9429
Richard Kenner [Fri, 21 Apr 1995 12:22:39 +0000 (08:22 -0400)]
(lang_options): Add -I for GNAT.
From-SVN: r9428
Richard Kenner [Fri, 21 Apr 1995 12:11:06 +0000 (08:11 -0400)]
(integer_all_onesp): Test to size of mode, not TYPE_PRECISION.
From-SVN: r9427
Richard Kenner [Fri, 21 Apr 1995 12:08:07 +0000 (08:08 -0400)]
(main): Turn on -fforce-mem for -O2.
From-SVN: r9426
Richard Kenner [Fri, 21 Apr 1995 12:03:23 +0000 (08:03 -0400)]
([lr]rotate_double): Replace; old versions were bogus.
(fold, shift and rotate): Don't call tree_int_cst_sgn on non-integer.
(fold, case LROTATE_EXPR): If constant count, convert to RROTATE_EXPR.
(fold, case RROTATE_EXPR): Sometimes commute logical op with rotate.
Delete pair of counteracting shifts.
From-SVN: r9425
Richard Kenner [Fri, 21 Apr 1995 11:57:42 +0000 (07:57 -0400)]
(simplify_logical, case AND): If still an AND, get new values for op0
and op1.
From-SVN: r9424
Jim Wilson [Fri, 21 Apr 1995 01:19:27 +0000 (18:19 -0700)]
Completely rewritten.
From-SVN: r9423