PIPS
operator.h
Go to the documentation of this file.
1 /*
2 
3  $Id: operator.h 23065 2016-03-02 09:05:50Z 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 /*
25  * FI: these values were taken from syntax/tokyacc.h but I do not
26  * think they matter. Wouldn't an enum be better?
27  *
28  * MOD was an initial exception. So are MINIMUM and MAXIMUM
29  */
30 
31 #define AND 55
32 #define EQ 56
33 #define EQV 57
34 #define GE 58
35 #define GT 59
36 #define LE 60
37 #define LT 61
38 #define NE 62
39 #define NEQV 63
40 #define NOT 64
41 #define OR 65
42 #define MINUS 73
43 #define PLUS 74
44 #define SLASH 75
45 #define STAR 76
46 #define POWER 77
47 #define MOD 78 /* not evaluated, but later added in IsBinaryOperator*/
48 #define CONCAT 84
49 #define MINIMUM 85
50 #define MAXIMUM 86
51 #define CAST_OP 87
52 #define BITWISE_AND 88
53 #define BITWISE_OR 89
54 #define BITWISE_XOR 90
55 #define RIGHT_SHIFT 91
56 #define LEFT_SHIFT 92
57 
58 #define ASSIGN 100
59 #define POST_INCREMENT 101
60 #define POST_DECREMENT 102
61 #define PRE_INCREMENT 103
62 #define PRE_DECREMENT 104
63 #define MULTIPLY_UPDATE 105
64 #define DIVIDE_UPDATE 106
65 #define PLUS_UPDATE 107
66 #define MINUS_UPDATE 108
67 #define LEFT_SHIFT_UPDATE 109
68 #define RIGHT_SHIFT_UPDATE 110
69 #define BITWISE_OR_UPDATE 111