PIPS
sac-local.h
Go to the documentation of this file.
1
/*
2
3
$Id: sac-local.h 23661 2023-07-07 13:19:25Z coelho $
4
5
Copyright 1989-2016 MINES ParisTech
6
7
This file is part of PIPS.
8
9
PIPS is free software: you can redistribute it and/or modify it
10
under the terms of the GNU General Public License as published by
11
the Free Software Foundation, either version 3 of the License, or
12
any later version.
13
14
PIPS 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.
17
18
See the GNU General Public License for more details.
19
20
You should have received a copy of the GNU General Public License
21
along with PIPS. If not, see <http://www.gnu.org/licenses/>.
22
23
*/
24
typedef
hash_table
operator_id_sons
;
25
#include "
sac_private.h
"
26
#include "
dg.h
"
27
28
typedef
dg_arc_label
arc_label
;
29
typedef
dg_vertex_label
vertex_label
;
30
31
#include "
graph.h
"
32
33
34
#define FUNC_TO_ATOMIZE_P(call) (\
35
type_functional_p(entity_type(call_function(call))) && \
36
(gen_length(module_functional_parameters(call_function(call))) != 0) && \
37
(!ENTITY_DEREFERENCING_P(call_function(call))) && \
38
(!ENTITY_POINT_TO_P(call_function(call))) && \
39
(!ENTITY_FIELD_P(call_function(call)))\
40
)
41
42
/* if conversion */
43
#define IF_TO_CONVERT "PIPS IF_TO_CONVERT"
44
#define IF_CONV_TO_COMPACT "PIPS IF_CONV_TO_COMPACT"
45
46
47
#define ENTITY_FUNCTION_P(f) (type_functional_p(entity_type(f)) && \
48
(gen_length(module_functional_parameters(f)) != 0))
49
50
/* simd_loop_const_elim.c */
51
52
#define SIMD_MASKED_SUFFIX "_MASKED"
53
#define SIMD_GENERIC_SUFFIX "_GENERIC"
54
#define SIMD_CONSTANT_SUFFIX "_CONSTANT"
55
#define SIMD_BROADCAST_SUFFIX "_BROADCAST"
56
#define SAC_PADDING_ENTITY_NAME "PADDING_VALUE"
57
58
#define STATEMENT_INFO_NEWGEN_DOMAIN SIMDSTATEMENTINFO_NEWGEN_DOMAIN
59
#define gen_STATEMENT_INFO_cons gen_SIMDSTATEMENTINFO_cons
60
61
62
#define CHECK_VECTORELEMENT(ve) do {\
63
pips_assert("vector Index seems legal"
,vectorElement_vectorIndex(ve) >= 0 && vectorElement_vectorIndex(ve) < simdStatementInfo_nbArgs(vectorElement_statement(ve)));\
64
} while(0)
65
66
67
/* symbols exported by the parser */
68
extern
FILE *
patterns_yyin
;
69
extern
int
patterns_yyparse
();
70
extern
int
patterns_yylex
();
71
extern
void
patterns_yyerror
(
const
char
*);
72
73
extern
size_t
sac_lineno
;
dg.h
graph.h
patterns_yylex
int patterns_yylex()
sac_lineno
size_t sac_lineno
patterns.c
Definition:
patterns.c:97
patterns_yyin
FILE * patterns_yyin
symbols exported by the parser
Definition:
sac.h:157
operator_id_sons
hash_table operator_id_sons
Definition:
sac-local.h:24
vertex_label
dg_vertex_label vertex_label
Definition:
sac-local.h:29
patterns_yyparse
int patterns_yyparse()
arc_label
dg_arc_label arc_label
Definition:
sac-local.h:28
patterns_yyerror
void patterns_yyerror(const char *)
Definition:
patterns.c:1863
sac_private.h
__hash_table
Definition:
hash.c:64
_newgen_struct_dg_arc_label_
Definition:
dg.h:195
_newgen_struct_dg_vertex_label_
Definition:
dg.h:227
pips
src
Libs
sac
sac-local.h
Generated on Thu Sep 26 2024 22:11:46 for PIPS by
1.9.1