Richard Kenner
ca89d290d8
(record_dead_and_set_regs_1): Handle SUBREGs.
...
From-SVN: r8594
1994-11-30 19:12:38 -05:00
Richard Kenner
5c5033c3c7
(convert_move): When emit multiword conversion, force FROM into a new
...
pseudo-reg if it overlaps TO.
From-SVN: r8593
1994-11-30 19:07:49 -05:00
Richard Kenner
db40b434fa
(fold_truthop): Delete BIT_AND_EXPR of constants with masks.
...
From-SVN: r8592
1994-11-30 19:02:39 -05:00
Richard Kenner
e4f5b48ec2
(floatsidf2): Test BITS_PER_WORD in pattern condition not during build.
...
Fail if TARGET_POWERPC64.
(floatunssidf2): Likewise.
From-SVN: r8591
1994-11-30 18:51:42 -05:00
Richard Kenner
2e360ab3f7
(BITS_PER_WORD): TARGET_POWERPC64 dependent.
...
(MAX_BITS_PER_WORD): Define.
(UNITS_PER_WORD): TARGET_POWERPC64 dependent.
(MAX_UNITS_PER_WORD): Define.
(UNITS_PER_FP_WORD): Define.
(HARD_REGNO_NREGS): Use MAX_UNITS_PER_FP_WORD.
(HARD_REGNO_MODE_OK): Likewise.
(CLASS_MAX_NREGS): Likewise.
(MOVE_MAX): TARGET_POWER and TARGET_POWERPC64 dependent.
(MAX_MOVE_MAX): Define.
From-SVN: r8590
1994-11-30 18:51:07 -05:00
Richard Kenner
414d3ee46f
(PREDICATE_CODES): Add lwa_operand.
...
From-SVN: r8589
1994-11-30 18:22:24 -05:00
Richard Kenner
a7a813f79f
(lwa_operand): New predicate.
...
From-SVN: r8588
1994-11-30 18:22:07 -05:00
Richard Kenner
287f13ffdd
(extendsidi2): Use lwa_operand predicate.
...
(sign_extend load with update): New PowerPC64 pattern.
From-SVN: r8587
1994-11-30 18:21:37 -05:00
Richard Kenner
5c30aff875
(extendsfdf2): SFmode and DFmode register format identical so use define_expand...
...
(extendsfdf2): SFmode and DFmode register format identical so use
define_expand with paradoxical subreg no-op and accompanying new
define_split.
From-SVN: r8586
1994-11-30 18:18:56 -05:00
Richard Kenner
8ca00751f7
(emit_block_move): Only use movstr if size is small enough constant or
...
MODE is at least BITS_PER_WORD.
From-SVN: r8585
1994-11-30 18:13:44 -05:00
Richard Kenner
8922eb5b24
(combine_reloads): If using reg dying in this insn as reload reg,
...
ensure it can't be a secondary output reload reg.
From-SVN: r8584
1994-11-30 18:04:48 -05:00
Richard Kenner
a07805c01c
(word_type): Use __attribute__ ((mode (__word__))).
...
From-SVN: r8583
1994-11-30 15:48:22 -05:00
Richard Kenner
caab5771c8
(decl_attribute): Allow special names (e.g, `word') for mode
...
attribute.
From-SVN: r8582
1994-11-30 15:48:00 -05:00
Richard Kenner
077e4b0117
(ibmrt): Add more cases for various forms of BSD.
...
From-SVN: r8581
1994-11-29 17:01:25 -05:00
Richard Kenner
84430d2cc0
(init_optabs): Don't set functions for rotl and rotr.
...
From-SVN: r8580
1994-11-29 16:50:22 -05:00
Richard Kenner
39e7161505
(expand_shift): Open-code rotate even if by a variable.
...
From-SVN: r8579
1994-11-29 16:49:53 -05:00
Jeff Law
e1a4071f3a
explow.c (hard_function_value): Change a register in BLKmode to a register in a sufficiently wide integer mode.
...
* explow.c (hard_function_value): Change a register in BLKmode
to a register in a sufficiently wide integer mode.
From-SVN: r8578
1994-11-28 22:45:16 -07:00
Jeff Law
4c485b6355
stmt.c (expand_return): For BLKmode structure returns...
...
* stmt.c (expand_return): For BLKmode structure returns, copy
the return value from memory into the return registers. Use
an integer mode rather than BLKmode for returning structures
in registers.
From-SVN: r8577
1994-11-28 22:44:58 -07:00
Jeff Law
203436d9aa
integrate.c (function_cannot_inline_p): Do not inline functions which return a BLKmode value in registers.
...
* integrate.c (function_cannot_inline_p): Do not inline functions
which return a BLKmode value in registers.
From-SVN: r8576
1994-11-28 22:44:47 -07:00
Jeff Law
aaf87c453b
expr.c (expand_assignment): For BLKmode structure returns...
...
* expr.c (expand_assignment): For BLKmode structure returns,
copy the return value from registers into the target memory
locations.
From-SVN: r8575
1994-11-28 22:44:19 -07:00
Jeff Law
766b19fbaf
calls.c (expand_call): Handle returning BLKmode values in registers.
...
* calls.c (expand_call): Handle returning BLKmode values in
registers. Do not try to promote BLKmode.
From-SVN: r8574
1994-11-28 22:44:06 -07:00
Jeff Law
451d86c293
pa.h (DEFAULT_PCC_STRUCT_RETURN): Define as zero.
...
* pa.h (DEFAULT_PCC_STRUCT_RETURN): Define as zero.
(RETURN_IN_MEMORY): Only large structs (>8 bytes) and addressable
structs should be returned in memory.
ci -u calls.c
From-SVN: r8573
1994-11-28 22:43:47 -07:00
Jeff Law
694b6b6ddb
calls.c (expand_call): Do not set is_integrable if the function is not inlineable according to...
...
* calls.c (expand_call): Do not set is_integrable if the
function is not inlineable according to function_cannot_inline_p.
From-SVN: r8572
1994-11-28 22:40:37 -07:00
Mike Stump
5603182320
libgcc2.c (__register_exceptions): Find max ending of a segment for end, not min.
...
* libgcc2.c (__register_exceptions): Find max ending of a segment for
end, not min.
* libgcc2.c (__unwind_function): New function to support stack
unwinding on i[34]86 for g++ exception handling.
From-SVN: r8571
1994-11-29 01:33:07 +00:00
Mike Stump
db5ae43ff2
49th Cygnus<->FSF merge
...
From-SVN: r8570
1994-11-29 00:59:16 +00:00
Jim Wilson
c7a7ac465e
(move_by_pieces, move_by_pieces_ninsns, emit_push_insn,
...
expand_assignment, store_field, expand_expr): Likewise.
(SLOW_UNALIGNED_ACCESS): Default to STRICT_ALIGNMENT, not zero.
From-SVN: r8569
1994-11-28 16:58:52 -08:00
Jim Wilson
5970d32e6e
(store_bit_field, extract_bit_field): Consistently use
...
SLOW_UNALIGNED_ACCESS instead of STRICT_ALIGNMENT.
From-SVN: r8568
1994-11-28 16:58:04 -08:00
Jim Wilson
94d681a0a7
(create_definition): Error if comma not followed by an identifier.
...
(create_definition): Error if comma not followed by an
identifier.
(collect_expansion): Error if # used in macro with no arguments.
From-SVN: r8567
1994-11-28 16:53:27 -08:00
Richard Kenner
dc93cff0ea
(FLAGS_TO_PASS): Fix typo in GCC_FOR_TARGET.
...
From-SVN: r8566
1994-11-28 18:52:57 -05:00
Jim Wilson
15317f8925
(finish_decl): Use DECL_CONTEXT instead of
...
current_binding_level to identify file-scope variables.
From-SVN: r8565
1994-11-28 15:03:16 -08:00
Michael Meissner
ad6267596c
Add comment on ffs to say why optimizing it further is a bad idea.
...
From-SVN: r8564
1994-11-25 23:57:41 +00:00
Steve Chamberlain
00f8ff66e9
*** empty log message ***
...
From-SVN: r8563
1994-11-24 04:38:49 +00:00
Richard Kenner
43d826d977
(TARGET_DEFAULT): Forbid usage of bitfield instructions.
...
From-SVN: r8562
1994-11-23 17:23:50 -05:00
Richard Kenner
c4338b4712
(everywhere): Correct range is -0x1fffffff to 0x20000000, others have to be loaded with movd.
...
(everywhere): Correct range is -0x1fffffff to 0x20000000, others have to be
loaded with movd.
Shortcircuit with TARGET_32532 as early as possible.
(movsi): Use movd to load unknown symbol values. to allow
From-SVN: r8561
1994-11-23 17:23:24 -05:00
Richard Kenner
989b3e7257
Add -mhimem to support linking above 0x20000000 boundary.
...
Fix meaning of BASE_REG_NEEDED.
(print_operand): Removed dead code.
From-SVN: r8560
1994-11-23 17:22:53 -05:00
Richard Kenner
2d33065aae
Add -mhimem to support linking above 0x20000000 boundary.
...
(CONST_COSTS): Correct range is -0x1fff to 0x2000.
From-SVN: r8559
1994-11-23 17:21:54 -05:00
Richard Kenner
6ad2f71a22
Add cases for romp-ibm-aix and romp-ibm-bsd.
...
From-SVN: r8558
1994-11-23 16:51:08 -05:00
Jim Wilson
9f770b61f6
(mips_output_external): Exclude __builtin_next_arg from list
...
of used external functions.
From-SVN: r8557
1994-11-23 11:42:41 -08:00
Jim Wilson
07c109c894
(arith_reg_operand): Disallow MACH_REG and MACL_REG.
...
From-SVN: r8556
1994-11-23 11:25:55 -08:00
Jim Wilson
fb3eb6f6b5
(SECONDARY_MEMORY_NEEDED_RTX, SECONDARY_MEMORY_NEEDED_MODE):
...
Use MODE not mode.
From-SVN: r8555
1994-11-23 11:09:15 -08:00
Richard Kenner
a98c9f1ab2
(emit_move_insn): If splitting up into individual words and X is a push_operand...
...
(emit_move_insn): If splitting up into individual words and X is a
push_operand, do the push and reference top of stack.
From-SVN: r8554
1994-11-23 13:30:35 -05:00
Doug Evans
601774ce08
(ASM_OUTPUT_SECTION_NAME): Define.
...
From-SVN: r8553
1994-11-23 02:39:37 +00:00
Richard Kenner
a8dd0e73ba
(gen_lowpart_common): Do nothing if size is greater than twice host
...
wordsize, not just if equal.
From-SVN: r8552
1994-11-22 17:41:55 -05:00
Richard Kenner
e33745253e
(fold_convert): Don't fold conversion if it would produce constant
...
larger than we can support.
From-SVN: r8551
1994-11-22 17:40:46 -05:00
Richard Kenner
dce39da657
(emit_no_conflict_block): Just emit the insns if the block contains
...
something not an INSN or has an embedded block.
From-SVN: r8550
1994-11-22 14:38:02 -05:00
Richard Kenner
9fe0563aff
(layout_type): Use ptr_mode instead of equivalent call to
...
mode_for_size.
From-SVN: r8549
1994-11-22 06:29:12 -05:00
Richard Kenner
15c9248c38
(init_emit): Set REGNO_POINTER_FLAG for HARD_FRAME_POINTER_REGNUM.
...
(ptr_mode): Add definition.
(init_emit_once): Initialize ptr_mode.
From-SVN: r8548
1994-11-22 06:28:38 -05:00
Richard Kenner
6c164c81ed
(ptr_mode): Add declaration.
...
From-SVN: r8547
1994-11-22 06:27:59 -05:00
Richard Kenner
b81cdf54f6
(output_constant): When eliminating conversions, treat ARRAY_TYPE like
...
a record.
From-SVN: r8546
1994-11-21 22:21:24 -05:00
Richard Kenner
ac7400c632
(movqi): Fix typo in push/pop case.
...
From-SVN: r8545
1994-11-21 18:41:30 -05:00