< prev index next >

modules/javafx.media/src/main/native/gstreamer/3rd_party/libffi/include/ffi_common.h

Print this page
@@ -72,18 +72,39 @@
  #define FFI_ASSERT(x)
  #define FFI_ASSERT_AT(x, f, l)
  #define FFI_ASSERT_VALID_TYPE(x)
  #endif
  
- #define ALIGN(v, a)  (((((size_t) (v))-1) | ((a)-1))+1)
- #define ALIGN_DOWN(v, a) (((size_t) (v)) & -a)
+ /* v cast to size_t and aligned up to a multiple of a */
+ #define FFI_ALIGN(v, a)  (((((size_t) (v))-1) | ((a)-1))+1)
+ /* v cast to size_t and aligned down to a multiple of a */
+ #define FFI_ALIGN_DOWN(v, a) (((size_t) (v)) & -a)
  
  /* Perform machine dependent cif processing */
  ffi_status ffi_prep_cif_machdep(ffi_cif *cif);
  ffi_status ffi_prep_cif_machdep_var(ffi_cif *cif,
       unsigned int nfixedargs, unsigned int ntotalargs);
  
+ 
+ #if HAVE_LONG_DOUBLE_VARIANT
+ /* Used to adjust size/alignment of ffi types.  */
+ void ffi_prep_types (ffi_abi abi);
+ #endif
+ 
+ /* Used internally, but overridden by some architectures */
+ ffi_status ffi_prep_cif_core(ffi_cif *cif,
+                  ffi_abi abi,
+                  unsigned int isvariadic,
+                  unsigned int nfixedargs,
+                  unsigned int ntotalargs,
+                  ffi_type *rtype,
+                  ffi_type **atypes);
+ 
+ /* Translate a data pointer to a code pointer.  Needed for closures on
+    some targets.  */
+ void *ffi_data_to_code_pointer (void *data) FFI_HIDDEN;
+ 
  /* Extended cif, used in callback from assembly routine */
  typedef struct
  {
    ffi_cif *cif;
    void *rvalue;
< prev index next >