1  #define X86_RET_FLOAT		0
       2  #define X86_RET_DOUBLE		1
       3  #define X86_RET_LDOUBLE		2
       4  #define X86_RET_SINT8		3
       5  #define X86_RET_SINT16		4
       6  #define X86_RET_UINT8		5
       7  #define X86_RET_UINT16		6
       8  #define X86_RET_INT64		7
       9  #define X86_RET_INT32		8
      10  #define X86_RET_VOID		9
      11  #define X86_RET_STRUCTPOP	10
      12  #define X86_RET_STRUCTARG       11
      13  #define X86_RET_STRUCT_1B	12
      14  #define X86_RET_STRUCT_2B	13
      15  #define X86_RET_UNUSED14	14
      16  #define X86_RET_UNUSED15	15
      17  
      18  #define X86_RET_TYPE_MASK	15
      19  #define X86_RET_POP_SHIFT	4
      20  
      21  #define R_EAX	0
      22  #define R_EDX	1
      23  #define R_ECX	2
      24  
      25  #ifdef __PCC__
      26  # define HAVE_FASTCALL 0
      27  #else
      28  # define HAVE_FASTCALL 1
      29  #endif
      30  
      31  #if defined(FFI_EXEC_STATIC_TRAMP)
      32  /*
      33   * For the trampoline code table mapping, a mapping size of 4K (base page size)
      34   * is chosen.
      35   */
      36  #define X86_TRAMP_MAP_SHIFT	12
      37  #define X86_TRAMP_MAP_SIZE	(1 << X86_TRAMP_MAP_SHIFT)
      38  #ifdef ENDBR_PRESENT
      39  #define X86_TRAMP_SIZE		44
      40  #else
      41  #define X86_TRAMP_SIZE		40
      42  #endif
      43  #endif