]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/target-insns.def
target-insns.def (prefetch): New targetm instruction pattern.
[thirdparty/gcc.git] / gcc / target-insns.def
CommitLineData
4bccb39e
RS
1/* Target instruction definitions.
2 Copyright (C) 2015 Free Software Foundation, Inc.
3
4 This program is free software; you can redistribute it and/or modify it
5 under the terms of the GNU General Public License as published by the
6 Free Software Foundation; either version 3, or (at your option) any
7 later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; see the file COPYING3. If not see
16 <http://www.gnu.org/licenses/>. */
17
18/* This file has one entry for each public pattern name that the target
19 can provide. It is only used if no distinction between operand modes
20 is necessary. If separate patterns are needed for different modes
21 (so as to distinguish addition of QImode values from addition of
22 HImode values, for example) then an optab should be used instead.
23
24 Each entry has the form:
25
26 DEF_TARGET_INSN (name, prototype)
27
28 where NAME is the name of the pattern and PROTOTYPE is its C prototype.
29 The prototype should use parameter names of the form "x0", "x1", etc.
30 Patterns that take no operands should have a prototype "(void)".
31
32 Instructions should be documented in md.texi rather than here. */
95a3fb9d
RS
33DEF_TARGET_INSN (builtin_longjmp, (rtx x0))
34DEF_TARGET_INSN (builtin_setjmp_receiver, (rtx x0))
35DEF_TARGET_INSN (builtin_setjmp_setup, (rtx x0))
e86a9946 36DEF_TARGET_INSN (canonicalize_funcptr_for_compare, (rtx x0, rtx x1))
8684d89d 37DEF_TARGET_INSN (casesi, (rtx x0, rtx x1, rtx x2, rtx x3, rtx x4))
e86a9946 38DEF_TARGET_INSN (epilogue, (void))
95a3fb9d 39DEF_TARGET_INSN (exception_receiver, (void))
ec4a505f 40DEF_TARGET_INSN (jump, (rtx x0))
20fceb31 41DEF_TARGET_INSN (load_multiple, (rtx x0, rtx x1, rtx x2))
ccf5bbdd
RS
42DEF_TARGET_INSN (mem_signal_fence, (rtx x0))
43DEF_TARGET_INSN (mem_thread_fence, (rtx x0))
44DEF_TARGET_INSN (memory_barrier, (void))
95a3fb9d
RS
45DEF_TARGET_INSN (nonlocal_goto, (rtx x0, rtx x1, rtx x2, rtx x3))
46DEF_TARGET_INSN (nonlocal_goto_receiver, (void))
134b044d 47DEF_TARGET_INSN (prefetch, (rtx x0, rtx x1, rtx x2))
e86a9946 48DEF_TARGET_INSN (prologue, (void))
4bccb39e 49DEF_TARGET_INSN (return, (void))
e86a9946 50DEF_TARGET_INSN (sibcall_epilogue, (void))
4bccb39e 51DEF_TARGET_INSN (simple_return, (void))
20fceb31 52DEF_TARGET_INSN (store_multiple, (rtx x0, rtx x1, rtx x2))
8684d89d 53DEF_TARGET_INSN (tablejump, (rtx x0, rtx x1))
43c7dca8
RS
54DEF_TARGET_INSN (untyped_call, (rtx x0, rtx x1, rtx x2))
55DEF_TARGET_INSN (untyped_return, (rtx x0, rtx x1))