xref: /aosp_15_r20/external/libffi/include/ffi_cfi.h (revision 1fd5a2e1d639cd1ddf29dd0c484c123bbd850c21)
1*1fd5a2e1SPrashanth Swaminathan /* -----------------------------------------------------------------------
2*1fd5a2e1SPrashanth Swaminathan    ffi_cfi.h - Copyright (c) 2014  Red Hat, Inc.
3*1fd5a2e1SPrashanth Swaminathan 
4*1fd5a2e1SPrashanth Swaminathan    Conditionally assemble cfi directives. Only necessary for building libffi.
5*1fd5a2e1SPrashanth Swaminathan    ----------------------------------------------------------------------- */
6*1fd5a2e1SPrashanth Swaminathan 
7*1fd5a2e1SPrashanth Swaminathan #ifndef FFI_CFI_H
8*1fd5a2e1SPrashanth Swaminathan #define FFI_CFI_H
9*1fd5a2e1SPrashanth Swaminathan 
10*1fd5a2e1SPrashanth Swaminathan #ifdef HAVE_AS_CFI_PSEUDO_OP
11*1fd5a2e1SPrashanth Swaminathan 
12*1fd5a2e1SPrashanth Swaminathan # define cfi_startproc			.cfi_startproc
13*1fd5a2e1SPrashanth Swaminathan # define cfi_endproc			.cfi_endproc
14*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa(reg, off)		.cfi_def_cfa reg, off
15*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa_register(reg)	.cfi_def_cfa_register reg
16*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa_offset(off)	.cfi_def_cfa_offset off
17*1fd5a2e1SPrashanth Swaminathan # define cfi_adjust_cfa_offset(off)	.cfi_adjust_cfa_offset off
18*1fd5a2e1SPrashanth Swaminathan # define cfi_offset(reg, off)		.cfi_offset reg, off
19*1fd5a2e1SPrashanth Swaminathan # define cfi_rel_offset(reg, off)	.cfi_rel_offset reg, off
20*1fd5a2e1SPrashanth Swaminathan # define cfi_register(r1, r2)		.cfi_register r1, r2
21*1fd5a2e1SPrashanth Swaminathan # define cfi_return_column(reg)		.cfi_return_column reg
22*1fd5a2e1SPrashanth Swaminathan # define cfi_restore(reg)		.cfi_restore reg
23*1fd5a2e1SPrashanth Swaminathan # define cfi_same_value(reg)		.cfi_same_value reg
24*1fd5a2e1SPrashanth Swaminathan # define cfi_undefined(reg)		.cfi_undefined reg
25*1fd5a2e1SPrashanth Swaminathan # define cfi_remember_state		.cfi_remember_state
26*1fd5a2e1SPrashanth Swaminathan # define cfi_restore_state		.cfi_restore_state
27*1fd5a2e1SPrashanth Swaminathan # define cfi_window_save		.cfi_window_save
28*1fd5a2e1SPrashanth Swaminathan # define cfi_personality(enc, exp)	.cfi_personality enc, exp
29*1fd5a2e1SPrashanth Swaminathan # define cfi_lsda(enc, exp)		.cfi_lsda enc, exp
30*1fd5a2e1SPrashanth Swaminathan # define cfi_escape(...)		.cfi_escape __VA_ARGS__
31*1fd5a2e1SPrashanth Swaminathan 
32*1fd5a2e1SPrashanth Swaminathan #else
33*1fd5a2e1SPrashanth Swaminathan 
34*1fd5a2e1SPrashanth Swaminathan # define cfi_startproc
35*1fd5a2e1SPrashanth Swaminathan # define cfi_endproc
36*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa(reg, off)
37*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa_register(reg)
38*1fd5a2e1SPrashanth Swaminathan # define cfi_def_cfa_offset(off)
39*1fd5a2e1SPrashanth Swaminathan # define cfi_adjust_cfa_offset(off)
40*1fd5a2e1SPrashanth Swaminathan # define cfi_offset(reg, off)
41*1fd5a2e1SPrashanth Swaminathan # define cfi_rel_offset(reg, off)
42*1fd5a2e1SPrashanth Swaminathan # define cfi_register(r1, r2)
43*1fd5a2e1SPrashanth Swaminathan # define cfi_return_column(reg)
44*1fd5a2e1SPrashanth Swaminathan # define cfi_restore(reg)
45*1fd5a2e1SPrashanth Swaminathan # define cfi_same_value(reg)
46*1fd5a2e1SPrashanth Swaminathan # define cfi_undefined(reg)
47*1fd5a2e1SPrashanth Swaminathan # define cfi_remember_state
48*1fd5a2e1SPrashanth Swaminathan # define cfi_restore_state
49*1fd5a2e1SPrashanth Swaminathan # define cfi_window_save
50*1fd5a2e1SPrashanth Swaminathan # define cfi_personality(enc, exp)
51*1fd5a2e1SPrashanth Swaminathan # define cfi_lsda(enc, exp)
52*1fd5a2e1SPrashanth Swaminathan # define cfi_escape(...)
53*1fd5a2e1SPrashanth Swaminathan 
54*1fd5a2e1SPrashanth Swaminathan #endif /* HAVE_AS_CFI_PSEUDO_OP */
55*1fd5a2e1SPrashanth Swaminathan #endif /* FFI_CFI_H */
56