aboutsummaryrefslogtreecommitdiff
path: root/gcc/md.texi
AgeCommit message (Collapse)AuthorFilesLines
2000-07-05invoke.texi: Fix minor typosRodney Brown1-4/+4
* invoke.texi: Fix minor typos * md.texi: Fix minor typos From-SVN: r34880
2000-05-06rtl.def (DEFINE_COND_EXEC): New.Richard Henderson1-0/+82
* rtl.def (DEFINE_COND_EXEC): New. * md.texi: Document it. * gensupport.c (input_file): Remove. (struct queue_elem): Add lineno. (rtx_ready_queue): Remove. (errors): New. (predicable_default): New. (predicable_true, predicable_false): New. (define_attr_queue, define_attr_tail): New. (define_insn_queue, define_insn_tail): New. (define_cond_exec_queue, define_cond_exec_tail): New. (other_queue, other_tail): New. (queue_pattern): New. (process_rtx): Add patterns to the appropriate queues. (is_predicable, identify_predicable_attribute): New. (n_alternatives, collect_insn_data): New. (alter_predicate_for_insn, alter_test_for_insn): New. (shift_output_template, alter_output_for_insn): New. (process_one_cond_exec, process_define_cond_exec): New. (init_md_reader): Read the entire file. Process define_cond_exec. (read_md_rtx): Return elements from the queues. From-SVN: r33751
2000-05-03gensupport.c: New file.Clinton Popetz1-0/+50
* gensupport.c: New file. * gensupport.h: New file. * Makefile.in (HOST_RTL): Depend on gensupport. (gensupport.o) New rule. * genattr.c: Use gensupport for reading .md files. * genattrtab.c: Ditto. * gencodes.c: Ditto. * genconfig.c: Ditto. * genemit.c: Ditto. * genextract.c: Ditto. * genflags.c: Ditto. * genopinit.c: Ditto. * genoutput.c: Ditto. * genpeep.c: Ditto. * genrecog.c: Ditto. * rtl.def (define_insn_and_split): New DEF_RTL_EXPR. * md.texi (Insn Splitting): Document define_insn_and_split. From-SVN: r33633
2000-04-05md.texi (Standard Names): Clarify when movX is needed.Hans-Peter Nilsson1-2/+4
* md.texi (Standard Names): Clarify when movX is needed. * combine.c (simplify_comparison) [MINUS]: Do not replace all (op (minus A B) 0) with (op A B). From-SVN: r32940
2000-03-16* md.texi (Standard Names): Document `jump'.Hans-Peter Nilsson1-0/+6
From-SVN: r32583
2000-03-03* md.texi: Document use of '*' in insn pattern name.Richard Kenner1-0/+5
From-SVN: r32309
2000-02-16invoke.texi: Add AVR invocation docs.Denis Chertykov1-0/+60
* invoke.texi: Add AVR invocation docs. * install.texi: Add information about AVR. * md.texi: Add AVR constraint letters description. * extend.texi: Add description for AVR specific attributes. From-SVN: r32022
2000-02-16md.texi (Simple Constraints): Add item about whitespace.Hans-Peter Nilsson1-0/+6
* md.texi (Simple Constraints): Add item about whitespace. * genoutput.c (strip_whitespace): New. (scan_operands) [MATCH_OPERAND, MATCH_SCRATCH]: Call strip_whitespace for constraints. Test pointer using NULL, not 0. Co-Authored-By: Michael Meissner <meissner@cygnus.com> From-SVN: r32008
2000-02-14gcc.texi (Passes): Fix typo.Hans-Peter Nilsson1-2/+2
* gcc.texi (Passes): Fix typo. * md.texi (Standard Names): Ditto. * tm.texi (Storage Layout): Ditto. From-SVN: r31967
1999-12-21* md.texi: Add c4x constraints documentation.Michael Hayes1-0/+83
From-SVN: r31049
1999-12-10sparc.c (fp_sethi_p, [...]): New functions.David S. Miller1-3/+11
* config/sparc/sparc.c (fp_sethi_p, fp_mov_p, fp_high_losum_p): New functions. * config/sparc/sparc-protos.h: Add them. * config/sparc/sparc.h: Add them to PREDICATE_CODES. (EXTRA_CONSTRAINT_BASE): New macro, handling Q, R, and S constraints which use those helpers. (EXTRA_CONSTRAINT): Use this new macro. * md.texi: Update sparc target constraints documentation. * config/sparc/sparc.md (clear_sf, clear_sfp, movsf_const_intreg, movsf_const_high, movsf_const_lo, movsf_insn): Delete. (movsf_insn_novis_liveg0, movsf_insn_novis_noliveg0, movsf_insn_vis, movsf_lo_sum, movsf_high): New patterns. (movsf high/lo_sum split): Rework for new patterns. (movsf expander): Allow storing fp_zero to memory if ! live_g0. From-SVN: r30857
1999-12-04c-common.c (enum attrs): Add A_NO_LIMIT_STACK.Geoff Keating1-0/+23
* c-common.c (enum attrs): Add A_NO_LIMIT_STACK. (init_attributes): Add A_NO_LIMIT_STACK. (decl_attributes): Handle A_NO_LIMIT_STACK. * c-decl.c (duplicate_decls): Handle DECL_NO_LIMIT_STACK. * explow.c (allocate_dynamic_stack_space) [!HAVE_allocate_stack]: Handle stack bounds checking. * flags.h (flag_stack_check): Use the word 'probe' rather than 'check', because the flag doesn't actually cause any checking to be done. * function.c (expand_function_start): Set current_function_limit_stack. * function.h (struct function): Add limit_stack. (current_function_limit_stack): Define. * invoke.texi (Code Gen Options): Document new options. * rtl.h: Declare stack_limit_rtx. * toplev.c (stack_limit_rtx): New variable. (decode_f_option): Handle new options -fstack-limit-register=REG, -fstack-limit-symbol=IDENT, -fno-stack-limit. (main): Add stack_limit_rtx as GC root. * tree.h (DECL_NO_LIMIT_STACK): New macro. (struct tree_decl): New member no_limit_stack. * config/rs6000/rs6000.c (rs6000_allocate_stack_space): Handle stack_limit_rtx. * config/rs6000/rs6000.md (allocate_stack): Handle stack_limit_rtx. (conditional_trap+1): Get new mnemonic correct. (conditional_trap+2): New pattern for DImode traps. * config/m68k/m68k.c (output_function_prologue): Handle stack_limit_rtx. * config/m68k/m68k.md (trap): New insn. (conditional_trap): New insn. * md.texi (Standard Names): Document `trap' and `conditional_trap'. * optabs.c (gen_cond_trap): Use start_sequence()/end_sequence() so a cc0 setter doesn't get emitted at some random place in the function. * config/i960/i960.md (trap): New insn. (conditional_trap): New expander. (conditional_trap+1, conditional_trap+2): New insns for signed and unsigned cases. * config/i960/i960.c (i960_function_prologue): Use STARTING_FRAME_OFFSET. Handle stack_limit_rtx. Co-Authored-By: Greg McGary <gkm@gnu.org> From-SVN: r30771
1999-10-10Fix docs for ADDRESS rtxBernd Schmidt1-23/+0
From-SVN: r29888
1999-10-02Fix typo in peep2 example.Richard Henderson1-3/+3
From-SVN: r29775
1999-10-02* md.texi (define_peephole2): New section.Richard Henderson1-212/+315
From-SVN: r29772
1999-10-01Delete !REGISTER_CONSTRAINTS codeBernd Schmidt1-27/+0
From-SVN: r29754
1999-09-06Merge in gcc2-ss-010999Jeff Law1-0/+3
From-SVN: r29150
1999-08-27rtl.c: Define CONST_DOUBLE_FORMAT to the appropriate format for a ↵Zack Weinberg1-1/+0
CONST_DOUBLE... 1999-08-27 13:27 -0700 Zack Weinberg <zack@bitmover.com> * rtl.c: Define CONST_DOUBLE_FORMAT to the appropriate format for a CONST_DOUBLE, at compile time. Initialize rtx_length and class_narrowest_mode at compile time. Kill init_rtl. Mark rtx_length, mode_class, mode_size, mode_unit_size, mode_wider_mode, mode_mask_array, class_narrowest_mode, and rtx_format as const. Kill all references to EXTRA_CC_MODES or EXTRA_CC_NAMES. * rtl.def (CONST_DOUBLE): Use CONST_DOUBLE_FORMAT macro for format. * rtl.h: Declare rtx_length and rtx_format as const. * machmode.def: Define CC(). Use CC() to define CCmode. If EXTRA_CC_MODES is defined, expand it here. * machmode.h: Declare mode_class, mode_size, mode_unit_size, mode_wider_mode, mode_mask_array, and class_narrowest_mode as const. Kill all references to EXTRA_CC_MODES. * toplev.c: Don't prototype or call init_rtl. * optabs.c: Don't call init_mov_optab. * genemit.c: Don't generate init_mov_optab. Don't call init_rtl. * gengenrtl.c: Duplicate calculation of CONST_DOUBLE_FORMAT here. * genattr.c, genattrtab.c, gencodes.c, genconfig.c, genextract.c, genflags.c, genopinit.c, genoutput.c, genpeep.c, genrecog.c: Don't call init_rtl. * arc.h, arm.h, c4x.h, i386.h, i960.h, m88k.h, pa.h, pdp11.h, rs6000.h, sparc.h: Don't define EXTRA_CC_NAMES. Use CC() in definition of EXTRA_CC_MODES. * md.texi: Kill ref to EXTRA_CC_NAMES. * tm.texi: Document new way to define EXTRA_CC_MODES. * genrecog.c: Do not look up the name of a define_split. (Unrelated bugfix.) From-SVN: r28937
1999-08-02[multiple changes]David Edelsohn1-3/+7
Mon Aug 2 16:15:57 1999 David Edelsohn <edelsohn@gnu.org> * rs6000/aix43.h (SUBTARGET_SWITCHES): Use -m64 and -m32 instead of -maix64 and -maix32. (ASM_SPEC, ASM_CPU_SPEC, CPP_SPEC, CPP_CPU_SPEC, LIB_SPEC, LINK_SPEC): Change appropriately. * rs6000/rs6000.c (short_cint_operand): Use CONST_OK_FOR_LETTER_P. (u_short_cint_operand): Likewise. * rs6000/rs6000.md (movdi splitters): Add TARGET_POWERPC64 support for 64-bit hosts. * rs6000/t-aix43 (MULTILIB): Change to -m64. * invoke.texi (RS/6000 Submodel): Document 64-bit processor options. Mon Aug 2 16:15:57 1999 Geoff Keating <geoffk@cygnus.com> * rs6000/rs6000.c (num_insns_constant_wide): Correct for type promotion. (add_operand): Get test correct for 64-bit HOST_WIDE_INT. (non_add_cint_operand): Likewise. (logical_operand): Likewise. (non_logical_cint_operand): Likewise. (print_operand): Correct printf()s for 64-bit HOST_WIDE_INT. (print_operand_address): Correct printf() for 64-bit HOST_WIDE_INT. (rs6000_select_rtx_section): Suppress warning. (small_data_operand): Suppress warning. (rs6000_got_register): Suppress warning. * rs6000/rs6000.md (andsi3): HOST_WIDE_INT is a signed type, so `J' is generally the wrong constraint for a SImode value; use `L' instead. (andsi3_internal2): Likewise. (andsi3_internal3): Likewise. (iorsi3_internal1): Likewise. (xorsi3_internal1): Likewise. (movsi): Likewise. (movsf_softfloat): Likewise. (scc insns): Likewise. (movsi+2): Preserve sign bits of SImode constant. (floatsidf2_internal+1): Sign-extend SImode constant correctly. (movdf+1): Sign-extend properly. (movdi_32+1): Sign-extend properly. (scc insns): Sign-extend properly. * md.texi (RS/6000 EXTRA_CONSTRAINTS): Update documentation for J, K, L, and T. From-SVN: r28406
1999-08-02Unroll my commit of 1999/08/01 16:14:58, there was a communications mixupGeoffrey Keating1-7/+3
about its status. From-SVN: r28403
1999-08-01rs6000.c (num_insns_constant_wide): Correct for type promotion.Geoff Keating1-3/+7
* config/rs6000/rs6000.c (num_insns_constant_wide): Correct for type promotion. (add_operand): Get test correct for 64-bit HOST_WIDE_INT. (non_add_cint_operand): Likewise. (logical_operand): Likewise. (non_logical_cint_operand): Likewise. (print_operand): Correct printf()s for 64-bit HOST_WIDE_INT. (print_operand_address): Correct printf() for 64-bit HOST_WIDE_INT. (rs6000_select_rtx_section): Suppress warning. (small_data_operand): Suppress warning. (rs6000_got_register): Suppress warning. * config/rs6000/rs6000.md (andsi3): HOST_WIDE_INT is a signed type, so `J' is generally the wrong constraint for a SImode value; use `L' instead. (andsi3_internal2): Likewise. (andsi3_internal3): Likewise. (iorsi3_internal1): Likewise. (xorsi3_internal1): Likewise. (movsi): Likewise. (movsf_softfloat): Likewise. various unnamed compare insns: Likewise. (movsi+2): Preserve sign bits of SImode constant. (floatsidf2_internal+1): Sign-extend SImode constant correctly. (movdf+1): Preserve high bits of DFmode constant. (movdi_32+1): Sign-extend properly. various unnamed compare insns: Sign-extend properly. * unroll.c (loop_iterations): Convert HOST_WIDE_INT to unsigned properly for mode. * expmed.c (expand_mult_highpart): Convert HOST_WIDE_INT from unsigned properly for mode. (expand_divmod): Likewise. * optabs.c (expand_fix): Keep HOST_WIDE_INT constants properly signed. (expand_binop): Sometimes there is work to do when changing the mode of a CONST_INT. From-SVN: r28375
1999-06-22Correct typo in smul@var{m}3_highpart documentation.Jim Wilson1-1/+1
From-SVN: r27706
1999-02-26[multiple changes]Jeff Law1-1/+35
Sat Feb 27 01:12:40 1999 Jeffrey A Law (law@cygnus.com) * md.texi (prologue,epilogue): Document named patterns. Fri Feb 26 19:31:25 1999 Dave Love <fx@gnu.org> * md.texi, invoke.texi: Fix unterminated @xrefs. From-SVN: r25477
1999-02-21Update attribute value documentation.Richard Henderson1-3/+10
From-SVN: r25349
1998-11-25toplev.c (no_new_pseudos): Define.Jeff Law1-2/+8
* toplev.c (no_new_pseudos): Define. (rest_of_compilation): Set no_new_pseudos as needed. * emit-rtl.c (gen_reg_rtx): Abort if we try to create a new pseudo if no_new_pseudos is set. * rtl.h (no_new_pseudos): Declare it. * reload1.c (reload): Update comments. * md.texi: Corresponding changes. * reload1.c (reg_used_in_insn): Renamed from reg_used_by_pseudo. (choose_reload_regs): Rename it here as well. When computing it, also merge in used hardregs. From-SVN: r23855
1998-10-13Document eh_epilogue.Richard Henderson1-0/+21
From-SVN: r23076
1998-09-14- update listing of rs6000-specific constraintsDavid Edelsohn1-4/+4
From-SVN: r22416
1998-07-01md.texi: fix typo in save_stack_* node.David Edelsohn1-1/+1
From-SVN: r20869
1998-06-30tm.texi: document STACK_SAVEAREA_MODE.David Edelsohn1-8/+9
md.texi: update save_stack_* pattern description. From-SVN: r20844
1998-05-05* Check in merge from gcc2. See ChangeLog.12 for details.Jeff Law1-3/+3
From-SVN: r19553
1998-04-22Add match_insn2; Fix prototype in loop.cMichael Meissner1-0/+19
From-SVN: r19377
1998-04-17Typo fix from mrs.Jeff Law1-1/+1
From-SVN: r19258
1998-04-04* Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12Jeff Law1-1/+9
for details. * haifa-sched.c: Mirror recent changes from gcc2. From-SVN: r18984
1998-03-311750a.md, [...]: Use GEN_INT consistently.Jeffrey A Law1-6/+5
* 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently. * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise. * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise. * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise. * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise. * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise. * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise. * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise. * md.texi: Likewise. From-SVN: r18927
1998-03-11final.c (shorten_branches): Remove conditionalizing on ↵J"orn Rennecke1-2/+1
SHORTEN_WITH_ADJUST_INSN_LENGTH * final.c (shorten_branches): Remove conditionalizing on SHORTEN_WITH_ADJUST_INSN_LENGTH * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove. From-SVN: r18470
1998-02-18Fix doc typos.Jeff Law1-1/+1
From-SVN: r18104
1998-02-16Update documentation for builtin_setjmp related patterns.Richard Henderson1-4/+25
From-SVN: r18029
1998-02-02Tweak again.Jeff Law1-1/+1
From-SVN: r17592
1998-02-01Improve movstrXX documentation.Jeff Law1-0/+8
From-SVN: r17587
1998-01-14Bring in final gcc-2.8.0 changes.Jeff Law1-0/+9
From-SVN: r17355
1997-12-19*** empty log message ***Jeff Law1-3/+3
From-SVN: r17154
1997-12-06Merge from gcc-2.8Jeff Law1-5/+5
From-SVN: r16987
1997-11-20Add missing @itemMichael Meissner1-2/+13
From-SVN: r16597
1997-08-11Initial revisionmisc/cutover-egcs-1Jeff Law1-0/+19
From-SVN: r14764
1997-03-25Initial revisionRichard Kenner1-0/+4096
From-SVN: r13794