1 /* prefs_copyToInstance.h
2  *
3  * Copyright (C) 2013,2015-2018,2021 Paul Boersma
4  *
5  * This code is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or (at
8  * your option) any later version.
9  *
10  * This code is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13  * See the GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this work. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
19 /* for C++ files; see prefs.h */
20 
21 #undef prefs_begin
22 #undef prefs_add_int
23 #undef prefs_add_int_with_data
24 #undef prefs_override_int
25 #undef prefs_add_integer
26 #undef prefs_add_integer_with_data
27 #undef prefs_override_integer
28 #undef prefs_add_bool
29 #undef prefs_add_bool_with_data
30 #undef prefs_override_bool
31 #undef prefs_add_double
32 #undef prefs_add_double_with_data
33 #undef prefs_override_double
34 #undef prefs_add_enum
35 #undef prefs_add_enum_with_data
36 #undef prefs_override_enum
37 #undef prefs_add_string
38 #undef prefs_add_string_with_data
39 #undef prefs_override_string
40 #undef prefs_end
41 
42 #define prefs_begin(Klas) \
43 	void struct##Klas :: v_copyPreferencesToInstance () { \
AArch64InstPrinter(const MCAsmInfo & MAI,const MCInstrInfo & MII,const MCRegisterInfo & MRI)44 		Klas##_Parent :: v_copyPreferencesToInstance ();
45 
46 #define prefs_add_int(Klas,name,version,default)
47 #define prefs_add_int_with_data(Klas,name,version,default)  our p_##name = our pref_##name ();
48 #define prefs_override_int(Klas,name,version,default)
AArch64AppleInstPrinter(const MCAsmInfo & MAI,const MCInstrInfo & MII,const MCRegisterInfo & MRI)49 
50 #define prefs_add_integer(Klas,name,version,default)
51 #define prefs_add_integer_with_data(Klas,name,version,default)  our p_##name = our pref_##name ();
52 #define prefs_override_integer(Klas,name,version,default)
53 
applyTargetSpecificCLOption(StringRef Opt)54 #define prefs_add_bool(Klas,name,version,default)
55 #define prefs_add_bool_with_data(Klas,name,version,default)  our p_##name = our pref_##name ();
56 #define prefs_override_bool(Klas,name,version,default)
57 
58 #define prefs_add_double(Klas,name,version,default)
59 #define prefs_add_double_with_data(Klas,name,version,default)  our p_##name = our pref_##name ();
60 #define prefs_override_double(Klas,name,version,default)
61 
printRegName(raw_ostream & OS,unsigned RegNo) const62 #define prefs_add_enum(Klas,name,version,enumerated,default)
63 #define prefs_add_enum_with_data(Klas,name,version,enumerated,default)  our p_##name = our pref_##name ();
64 #define prefs_override_enum(Klas,name,version,enumerated,default)
65 
66 #define prefs_add_string(Klas,name,version,default)
printInst(const MCInst * MI,uint64_t Address,StringRef Annot,const MCSubtargetInfo & STI,raw_ostream & O)67 #define prefs_add_string_with_data(Klas,name,version,default)  str32cpy (& our p_##name [0], our pref_##name ());
68 #define prefs_override_string(Klas,name,version,default)
69 
70 #define prefs_end(Klas) \
71 	}
72 
73 /* End of file prefs_copyToInstance.h */
74