1 /* This file contains the definitions for the gimple IR structure
2 enumeration used in GCC.
4 Copyright (C
) 2007, 2008, 2010 Free Software Foundation
, Inc.
5 Contributed by Aldy Hernandez
<aldyh@redhat.com
>
7 This file is part of GCC.
9 GCC is free software
; you can redistribute it and
/or modify it under
10 the terms of the GNU General Public License as published by the Free
11 Software Foundation
; either version
3, or (at your option
) any later
14 GCC is distributed in the hope that it will be useful
, but WITHOUT ANY
15 WARRANTY
; without even the implied warranty of MERCHANTABILITY or
16 FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License
19 You should have received a copy of the GNU General Public License
20 along with GCC
; see the file COPYING3. If not see
21 <http
://www.gnu.org
/licenses
/>.
*/
23 /* The format of this file is
24 DEFGSSTRUCT(GSS enumeration value
, structure name
, has
-tree
-operands
).
25 Each enum value should correspond with a single member of the union
26 gimple_statement_d.
*/
28 DEFGSSTRUCT(GSS_BASE
, gimple_statement_base
, false
)
29 DEFGSSTRUCT(GSS_WITH_OPS
, gimple_statement_with_ops
, true
)
30 DEFGSSTRUCT(GSS_WITH_MEM_OPS_BASE
, gimple_statement_with_memory_ops_base
, false
)
31 DEFGSSTRUCT(GSS_WITH_MEM_OPS
, gimple_statement_with_memory_ops
, true
)
32 DEFGSSTRUCT(GSS_CALL
, gimple_statement_call
, true
)
33 DEFGSSTRUCT(GSS_ASM
, gimple_statement_asm
, true
)
34 DEFGSSTRUCT(GSS_BIND
, gimple_statement_bind
, false
)
35 DEFGSSTRUCT(GSS_PHI
, gimple_statement_phi
, false
)
36 DEFGSSTRUCT(GSS_TRY
, gimple_statement_try
, false
)
37 DEFGSSTRUCT(GSS_CATCH
, gimple_statement_catch
, false
)
38 DEFGSSTRUCT(GSS_EH_FILTER
, gimple_statement_eh_filter
, false
)
39 DEFGSSTRUCT(GSS_EH_MNT
, gimple_statement_eh_mnt
, false
)
40 DEFGSSTRUCT(GSS_EH_CTRL
, gimple_statement_eh_ctrl
, false
)
41 DEFGSSTRUCT(GSS_EH_ELSE
, gimple_statement_eh_else
, false
)
42 DEFGSSTRUCT(GSS_WCE
, gimple_statement_wce
, false
)
43 DEFGSSTRUCT(GSS_OMP
, gimple_statement_omp
, false
)
44 DEFGSSTRUCT(GSS_OMP_CRITICAL
, gimple_statement_omp_critical
, false
)
45 DEFGSSTRUCT(GSS_OMP_FOR
, gimple_statement_omp_for
, false
)
46 DEFGSSTRUCT(GSS_OMP_PARALLEL
, gimple_statement_omp_parallel
, false
)
47 DEFGSSTRUCT(GSS_OMP_TASK
, gimple_statement_omp_task
, false
)
48 DEFGSSTRUCT(GSS_OMP_SECTIONS
, gimple_statement_omp_sections
, false
)
49 DEFGSSTRUCT(GSS_OMP_SINGLE
, gimple_statement_omp_single
, false
)
50 DEFGSSTRUCT(GSS_OMP_CONTINUE
, gimple_statement_omp_continue
, false
)
51 DEFGSSTRUCT(GSS_OMP_ATOMIC_LOAD
, gimple_statement_omp_atomic_load
, false
)
52 DEFGSSTRUCT(GSS_OMP_ATOMIC_STORE
, gimple_statement_omp_atomic_store
, false
)
53 DEFGSSTRUCT(GSS_TRANSACTION
, gimple_statement_transaction
, false
)