annotate gcc/target-insns.def @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* Target instruction definitions.
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
2 Copyright (C) 2015-2020 Free Software Foundation, Inc.
111
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 This program is free software; you can redistribute it and/or modify it
kono
parents:
diff changeset
5 under the terms of the GNU General Public License as published by the
kono
parents:
diff changeset
6 Free Software Foundation; either version 3, or (at your option) any
kono
parents:
diff changeset
7 later version.
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 This program is distributed in the hope that it will be useful,
kono
parents:
diff changeset
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
kono
parents:
diff changeset
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
kono
parents:
diff changeset
12 GNU General Public License for more details.
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 You should have received a copy of the GNU General Public License
kono
parents:
diff changeset
15 along with this program; see the file COPYING3. If not see
kono
parents:
diff changeset
16 <http://www.gnu.org/licenses/>. */
kono
parents:
diff changeset
17
kono
parents:
diff changeset
18 /* This file has one entry for each public pattern name that the target
kono
parents:
diff changeset
19 can provide. It is only used if no distinction between operand modes
kono
parents:
diff changeset
20 is necessary. If separate patterns are needed for different modes
kono
parents:
diff changeset
21 (so as to distinguish addition of QImode values from addition of
kono
parents:
diff changeset
22 HImode values, for example) then an optab should be used instead.
kono
parents:
diff changeset
23
kono
parents:
diff changeset
24 Each entry has the form:
kono
parents:
diff changeset
25
kono
parents:
diff changeset
26 DEF_TARGET_INSN (name, prototype)
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 where NAME is the name of the pattern and PROTOTYPE is its C prototype.
kono
parents:
diff changeset
29 The prototype should use parameter names of the form "x0", "x1", etc.
kono
parents:
diff changeset
30 for the operands that the .md pattern is required to have, followed by
kono
parents:
diff changeset
31 parameter names of the form "optN" for operands that the .md pattern
kono
parents:
diff changeset
32 may choose to ignore. Patterns that never take operands should have
kono
parents:
diff changeset
33 a prototype "(void)".
kono
parents:
diff changeset
34
kono
parents:
diff changeset
35 Pattern names should be documented in md.texi rather than here. */
kono
parents:
diff changeset
36 DEF_TARGET_INSN (allocate_stack, (rtx x0, rtx x1))
kono
parents:
diff changeset
37 DEF_TARGET_INSN (atomic_test_and_set, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
38 DEF_TARGET_INSN (builtin_longjmp, (rtx x0))
kono
parents:
diff changeset
39 DEF_TARGET_INSN (builtin_setjmp_receiver, (rtx x0))
kono
parents:
diff changeset
40 DEF_TARGET_INSN (builtin_setjmp_setup, (rtx x0))
kono
parents:
diff changeset
41 DEF_TARGET_INSN (canonicalize_funcptr_for_compare, (rtx x0, rtx x1))
kono
parents:
diff changeset
42 DEF_TARGET_INSN (call, (rtx x0, rtx opt1, rtx opt2, rtx opt3))
kono
parents:
diff changeset
43 DEF_TARGET_INSN (call_pop, (rtx x0, rtx opt1, rtx opt2, rtx opt3))
kono
parents:
diff changeset
44 DEF_TARGET_INSN (call_value, (rtx x0, rtx x1, rtx opt2, rtx opt3, rtx opt4))
kono
parents:
diff changeset
45 DEF_TARGET_INSN (call_value_pop, (rtx x0, rtx x1, rtx opt2, rtx opt3,
kono
parents:
diff changeset
46 rtx opt4))
kono
parents:
diff changeset
47 DEF_TARGET_INSN (casesi, (rtx x0, rtx x1, rtx x2, rtx x3, rtx x4))
kono
parents:
diff changeset
48 DEF_TARGET_INSN (check_stack, (rtx x0))
kono
parents:
diff changeset
49 DEF_TARGET_INSN (clear_cache, (rtx x0, rtx x1))
kono
parents:
diff changeset
50 DEF_TARGET_INSN (doloop_begin, (rtx x0, rtx x1))
kono
parents:
diff changeset
51 DEF_TARGET_INSN (doloop_end, (rtx x0, rtx x1))
kono
parents:
diff changeset
52 DEF_TARGET_INSN (eh_return, (rtx x0))
kono
parents:
diff changeset
53 DEF_TARGET_INSN (epilogue, (void))
kono
parents:
diff changeset
54 DEF_TARGET_INSN (exception_receiver, (void))
kono
parents:
diff changeset
55 DEF_TARGET_INSN (extv, (rtx x0, rtx x1, rtx x2, rtx x3))
kono
parents:
diff changeset
56 DEF_TARGET_INSN (extzv, (rtx x0, rtx x1, rtx x2, rtx x3))
kono
parents:
diff changeset
57 DEF_TARGET_INSN (indirect_jump, (rtx x0))
kono
parents:
diff changeset
58 DEF_TARGET_INSN (insv, (rtx x0, rtx x1, rtx x2, rtx x3))
kono
parents:
diff changeset
59 DEF_TARGET_INSN (jump, (rtx x0))
kono
parents:
diff changeset
60 DEF_TARGET_INSN (load_multiple, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
61 DEF_TARGET_INSN (mem_thread_fence, (rtx x0))
kono
parents:
diff changeset
62 DEF_TARGET_INSN (memory_barrier, (void))
kono
parents:
diff changeset
63 DEF_TARGET_INSN (memory_blockage, (void))
kono
parents:
diff changeset
64 DEF_TARGET_INSN (movstr, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
65 DEF_TARGET_INSN (nonlocal_goto, (rtx x0, rtx x1, rtx x2, rtx x3))
kono
parents:
diff changeset
66 DEF_TARGET_INSN (nonlocal_goto_receiver, (void))
kono
parents:
diff changeset
67 DEF_TARGET_INSN (oacc_dim_pos, (rtx x0, rtx x1))
kono
parents:
diff changeset
68 DEF_TARGET_INSN (oacc_dim_size, (rtx x0, rtx x1))
kono
parents:
diff changeset
69 DEF_TARGET_INSN (oacc_fork, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
70 DEF_TARGET_INSN (oacc_join, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
71 DEF_TARGET_INSN (omp_simt_enter, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
72 DEF_TARGET_INSN (omp_simt_exit, (rtx x0))
kono
parents:
diff changeset
73 DEF_TARGET_INSN (omp_simt_lane, (rtx x0))
kono
parents:
diff changeset
74 DEF_TARGET_INSN (omp_simt_last_lane, (rtx x0, rtx x1))
kono
parents:
diff changeset
75 DEF_TARGET_INSN (omp_simt_ordered, (rtx x0, rtx x1))
kono
parents:
diff changeset
76 DEF_TARGET_INSN (omp_simt_vote_any, (rtx x0, rtx x1))
kono
parents:
diff changeset
77 DEF_TARGET_INSN (omp_simt_xchg_bfly, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
78 DEF_TARGET_INSN (omp_simt_xchg_idx, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
79 DEF_TARGET_INSN (prefetch, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
80 DEF_TARGET_INSN (probe_stack, (rtx x0))
kono
parents:
diff changeset
81 DEF_TARGET_INSN (probe_stack_address, (rtx x0))
kono
parents:
diff changeset
82 DEF_TARGET_INSN (prologue, (void))
kono
parents:
diff changeset
83 DEF_TARGET_INSN (ptr_extend, (rtx x0, rtx x1))
kono
parents:
diff changeset
84 DEF_TARGET_INSN (reload_load_address, (rtx x0, rtx x1))
kono
parents:
diff changeset
85 DEF_TARGET_INSN (restore_stack_block, (rtx x0, rtx x1))
kono
parents:
diff changeset
86 DEF_TARGET_INSN (restore_stack_function, (rtx x0, rtx x1))
kono
parents:
diff changeset
87 DEF_TARGET_INSN (restore_stack_nonlocal, (rtx x0, rtx x1))
kono
parents:
diff changeset
88 DEF_TARGET_INSN (return, (void))
kono
parents:
diff changeset
89 DEF_TARGET_INSN (save_stack_block, (rtx x0, rtx x1))
kono
parents:
diff changeset
90 DEF_TARGET_INSN (save_stack_function, (rtx x0, rtx x1))
kono
parents:
diff changeset
91 DEF_TARGET_INSN (save_stack_nonlocal, (rtx x0, rtx x1))
kono
parents:
diff changeset
92 DEF_TARGET_INSN (sibcall, (rtx x0, rtx opt1, rtx opt2, rtx opt3))
kono
parents:
diff changeset
93 DEF_TARGET_INSN (sibcall_epilogue, (void))
kono
parents:
diff changeset
94 DEF_TARGET_INSN (sibcall_value, (rtx x0, rtx x1, rtx opt2, rtx opt3,
kono
parents:
diff changeset
95 rtx opt4))
kono
parents:
diff changeset
96 DEF_TARGET_INSN (simple_return, (void))
kono
parents:
diff changeset
97 DEF_TARGET_INSN (split_stack_prologue, (void))
kono
parents:
diff changeset
98 DEF_TARGET_INSN (split_stack_space_check, (rtx x0, rtx x1))
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
99 DEF_TARGET_INSN (stack_protect_combined_set, (rtx x0, rtx x1))
111
kono
parents:
diff changeset
100 DEF_TARGET_INSN (stack_protect_set, (rtx x0, rtx x1))
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
101 DEF_TARGET_INSN (stack_protect_combined_test, (rtx x0, rtx x1, rtx x2))
111
kono
parents:
diff changeset
102 DEF_TARGET_INSN (stack_protect_test, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
103 DEF_TARGET_INSN (store_multiple, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
104 DEF_TARGET_INSN (tablejump, (rtx x0, rtx x1))
kono
parents:
diff changeset
105 DEF_TARGET_INSN (trap, (void))
kono
parents:
diff changeset
106 DEF_TARGET_INSN (unique, (void))
kono
parents:
diff changeset
107 DEF_TARGET_INSN (untyped_call, (rtx x0, rtx x1, rtx x2))
kono
parents:
diff changeset
108 DEF_TARGET_INSN (untyped_return, (rtx x0, rtx x1))