Contents omitted. Just cd to libffi and run `./merge.sh v3.5.2`

Merged commit: e2eda0cf72a0598b44278cc91860ea402273fa29

Signed-off-by: Pietro Monteiro <[email protected]>
---
 libffi/LICENSE                                |   2 +-
 libffi/MERGE                                  |   2 +-
 libffi/Makefile.am                            | 165 +---
 libffi/README.md                              | 164 +++-
 libffi/acinclude.m4                           | 128 +--
 libffi/configure.ac                           | 229 ++---
 libffi/configure.host                         |  28 +-
 libffi/doc/libffi.texi                        |  68 +-
 libffi/doc/version.texi                       |   8 +-
 libffi/generate-darwin-source-and-headers.py  | 155 ++--
 libffi/include/Makefile.am                    |   6 +-
 libffi/include/ffi.h.in                       | 110 +--
 libffi/include/ffi_cfi.h                      |   4 +-
 libffi/include/ffi_common.h                   |  27 +-
 libffi/libffi.map.in                          |  19 +-
 libffi/libtool-version                        |   4 +-
 libffi/src/aarch64/ffi.c                      | 174 ++--
 libffi/src/aarch64/ffitarget.h                |   4 +-
 libffi/src/aarch64/internal.h                 |  80 +-
 libffi/src/aarch64/sysv.S                     | 280 ++++--
 libffi/src/arc/arcompact.S                    | 263 +++---
 libffi/src/arc/ffi.c                          | 475 +++++++----
 libffi/src/arc/ffitarget.h                    |  14 +
 libffi/src/arm/ffi.c                          |  34 +-
 libffi/src/arm/sysv.S                         |  33 -
 libffi/src/closures.c                         | 140 +--
 libffi/src/debug.c                            |   4 +-
 libffi/src/dlmalloc.c                         |   8 +-
 libffi/src/ia64/ffi.c                         |  12 +
 libffi/src/ia64/unix.S                        |  22 +-
 libffi/src/loongarch64/ffi.c                  |   1 +
 libffi/src/m32r/ffi.c                         |  45 +-
 libffi/src/mips/ffi.c                         | 317 +++++--
 libffi/src/mips/ffitarget.h                   |  13 +-
 libffi/src/mips/n32.S                         | 228 ++++-
 libffi/src/mips/o32.S                         |  69 +-
 libffi/src/moxie/ffi.c                        |  69 +-
 libffi/src/or1k/ffi.c                         |  41 +-
 libffi/src/pa/ffi.c                           |  65 +-
 libffi/src/pa/ffi64.c                         | 614 ++++++++++++++
 libffi/src/pa/ffitarget.h                     |  30 +-
 libffi/src/pa/hpux32.S                        | 119 ++-
 libffi/src/pa/hpux64.S                        | 681 +++++++++++++++
 libffi/src/pa/linux.S                         | 121 ++-
 libffi/src/powerpc/ffi.c                      |  19 +
 libffi/src/powerpc/ffi_darwin.c               |  60 +-
 libffi/src/powerpc/ffi_linux64.c              |  45 +-
 libffi/src/powerpc/ffi_sysv.c                 |  42 +-
 libffi/src/powerpc/internal.h                 |  10 +
 libffi/src/powerpc/linux64_closure.S          |  47 ++
 libffi/src/powerpc/ppc_closure.S              |  24 +
 libffi/src/powerpc/t-aix                      |   5 +
 libffi/src/prep_cif.c                         |  10 +-
 libffi/src/riscv/ffi.c                        |  41 +-
 libffi/src/s390/ffi.c                         |  29 +-
 libffi/src/s390/internal.h                    |  11 +
 libffi/src/s390/sysv.S                        |  38 +
 libffi/src/sparc/ffi64.c                      |  24 +-
 libffi/src/tramp.c                            |  76 +-
 libffi/src/types.c                            |  32 +-
 libffi/src/wasm/ffi.c                         | 798 ++++++++++++++++++
 libffi/src/wasm/ffitarget.h                   |  79 ++
 libffi/src/x86/ffi.c                          |  74 +-
 libffi/src/x86/ffi64.c                        |  44 +-
 libffi/src/x86/ffitarget.h                    |   8 +-
 libffi/src/x86/ffiw64.c                       |  20 +-
 libffi/src/x86/sysv_intel.S                   | 179 ++--
 libffi/src/x86/unix64.S                       |  35 +-
 libffi/src/xtensa/ffi.c                       |  24 +-
 libffi/src/xtensa/ffitarget.h                 |   4 +
 libffi/src/xtensa/sysv.S                      |  42 +-
 libffi/testsuite/Makefile.am                  | 199 ++---
 libffi/testsuite/emscripten/build-tests.sh    |  34 +
 libffi/testsuite/emscripten/build.sh          |  46 +
 libffi/testsuite/emscripten/conftest.py       |  86 ++
 libffi/testsuite/emscripten/node-tests.sh     |  23 +
 libffi/testsuite/emscripten/test.html         |   7 +
 libffi/testsuite/emscripten/test_libffi.py    |  51 ++
 libffi/testsuite/lib/libffi.exp               | 585 ++++++-------
 libffi/testsuite/lib/target-libpath.exp       |   4 +-
 libffi/testsuite/libffi.bhaible/test-call.c   |   1 +
 libffi/testsuite/libffi.bhaible/testcases.c   |   2 +-
 libffi/testsuite/libffi.call/bpo_38748.c      |  41 +
 libffi/testsuite/libffi.call/callback.c       |  99 +++
 libffi/testsuite/libffi.call/callback2.c      | 108 +++
 libffi/testsuite/libffi.call/callback3.c      | 114 +++
 libffi/testsuite/libffi.call/callback4.c      | 119 +++
 libffi/testsuite/libffi.call/ffitest.h        |  26 +-
 libffi/testsuite/libffi.call/float_va.c       |   3 +
 libffi/testsuite/libffi.call/longjmp.c        |  60 ++
 libffi/testsuite/libffi.call/overread.c       |  54 ++
 libffi/testsuite/libffi.call/pyobjc_tc.c      | 114 +++
 libffi/testsuite/libffi.call/return_ll1.c     |   5 +
 libffi/testsuite/libffi.call/return_sl.c      |   4 +
 libffi/testsuite/libffi.call/return_ul.c      |   4 +
 libffi/testsuite/libffi.call/s55.c            |  60 ++
 libffi/testsuite/libffi.call/strlen.c         |  17 +-
 libffi/testsuite/libffi.call/strlen2.c        |   4 +-
 libffi/testsuite/libffi.call/strlen3.c        |   4 +-
 libffi/testsuite/libffi.call/strlen4.c        |   4 +-
 libffi/testsuite/libffi.call/struct10.c       |   2 +-
 .../testsuite/libffi.call/struct_by_value_2.c |  63 ++
 .../testsuite/libffi.call/struct_by_value_3.c |  65 ++
 .../libffi.call/struct_by_value_3f.c          |  65 ++
 .../testsuite/libffi.call/struct_by_value_4.c |  67 ++
 .../libffi.call/struct_by_value_4f.c          |  67 ++
 .../libffi.call/struct_by_value_big.c         |  93 ++
 .../libffi.call/struct_by_value_small.c       |  61 ++
 .../testsuite/libffi.call/struct_int_float.c  |  88 ++
 .../testsuite/libffi.call/struct_return_2H.c  |  63 ++
 .../testsuite/libffi.call/struct_return_8H.c  |  90 ++
 libffi/testsuite/libffi.call/va_2.c           |  26 +-
 libffi/testsuite/libffi.call/va_3.c           | 154 ++++
 libffi/testsuite/libffi.call/va_struct1.c     |  13 +
 libffi/testsuite/libffi.call/va_struct2.c     |  11 +
 libffi/testsuite/libffi.call/va_struct3.c     |  15 +
 libffi/testsuite/libffi.call/x32.c            |  31 +
 .../testsuite/libffi.closures/closure_fn0.c   |   5 +-
 .../testsuite/libffi.closures/closure_fn1.c   |   2 +
 .../testsuite/libffi.closures/closure_fn2.c   |   2 +
 .../testsuite/libffi.closures/closure_fn3.c   |  22 +-
 .../testsuite/libffi.closures/closure_fn4.c   |   2 +
 .../testsuite/libffi.closures/closure_fn5.c   |   2 +
 .../testsuite/libffi.closures/closure_fn6.c   |   2 +
 .../libffi.closures/closure_loc_fn0.c         |  12 +-
 .../libffi.closures/closure_simple.c          |   6 +
 libffi/testsuite/libffi.closures/cls_12byte.c |  18 +
 libffi/testsuite/libffi.closures/cls_16byte.c |  22 +
 libffi/testsuite/libffi.closures/cls_18byte.c |  24 +
 libffi/testsuite/libffi.closures/cls_19byte.c |  29 +
 .../testsuite/libffi.closures/cls_1_1byte.c   |   4 +
 libffi/testsuite/libffi.closures/cls_20byte.c |  18 +
 .../testsuite/libffi.closures/cls_20byte1.c   |  20 +
 libffi/testsuite/libffi.closures/cls_24byte.c |  32 +
 libffi/testsuite/libffi.closures/cls_2byte.c  |  13 +
 .../testsuite/libffi.closures/cls_3_1byte.c   |  19 +
 libffi/testsuite/libffi.closures/cls_3byte1.c |  13 +
 libffi/testsuite/libffi.closures/cls_3byte2.c |  13 +
 libffi/testsuite/libffi.closures/cls_3float.c |  18 +
 .../testsuite/libffi.closures/cls_4_1byte.c   |  22 +
 libffi/testsuite/libffi.closures/cls_4byte.c  |  13 +
 .../testsuite/libffi.closures/cls_5_1_byte.c  |  28 +
 libffi/testsuite/libffi.closures/cls_5byte.c  |  18 +
 libffi/testsuite/libffi.closures/cls_64byte.c |  24 +
 .../testsuite/libffi.closures/cls_6_1_byte.c  |  27 +
 libffi/testsuite/libffi.closures/cls_6byte.c  |  24 +-
 .../testsuite/libffi.closures/cls_7_1_byte.c  |  38 +
 libffi/testsuite/libffi.closures/cls_7byte.c  |  24 +
 libffi/testsuite/libffi.closures/cls_8byte.c  |  14 +
 libffi/testsuite/libffi.closures/cls_9byte1.c |  13 +
 libffi/testsuite/libffi.closures/cls_9byte2.c |  14 +-
 .../libffi.closures/cls_align_double.c        |  18 +
 .../libffi.closures/cls_align_float.c         |  18 +
 .../libffi.closures/cls_align_longdouble.c    |  19 +
 .../cls_align_longdouble_split.c              |  63 +-
 .../cls_align_longdouble_split2.c             |  41 +-
 .../libffi.closures/cls_align_pointer.c       |  18 +
 .../libffi.closures/cls_align_sint16.c        |  17 +
 .../libffi.closures/cls_align_sint32.c        |  19 +-
 .../libffi.closures/cls_align_sint64.c        |  17 +
 .../libffi.closures/cls_align_uint16.c        |  17 +
 .../libffi.closures/cls_align_uint32.c        |  18 +
 .../libffi.closures/cls_align_uint64.c        |  18 +
 .../libffi.closures/cls_dbls_struct.c         |   4 +-
 .../testsuite/libffi.closures/cls_double_va.c |  10 +-
 libffi/testsuite/libffi.closures/cls_float.c  |   4 +
 .../libffi.closures/cls_longdouble.c          |  12 +-
 .../libffi.closures/cls_longdouble_va.c       |  25 +-
 .../libffi.closures/cls_multi_schar.c         |   4 +
 .../libffi.closures/cls_multi_sshort.c        |   5 +
 .../libffi.closures/cls_multi_sshortchar.c    |   8 +
 .../libffi.closures/cls_multi_uchar.c         |   8 +
 .../libffi.closures/cls_multi_ushort.c        |   6 +-
 .../libffi.closures/cls_multi_ushortchar.c    |   8 +
 .../testsuite/libffi.closures/cls_pointer.c   |   5 +
 .../libffi.closures/cls_pointer_stack.c       |  10 +
 libffi/testsuite/libffi.closures/cls_schar.c  |   3 +
 libffi/testsuite/libffi.closures/cls_sint.c   |   2 +
 libffi/testsuite/libffi.closures/cls_sshort.c |   3 +
 .../libffi.closures/cls_struct_va1.c          |  11 +
 libffi/testsuite/libffi.closures/cls_uchar.c  |   3 +
 libffi/testsuite/libffi.closures/cls_uint.c   |   4 +
 .../testsuite/libffi.closures/cls_uint_va.c   |   4 +
 .../testsuite/libffi.closures/cls_ulong_va.c  |   4 +
 .../testsuite/libffi.closures/cls_ulonglong.c |   2 +
 libffi/testsuite/libffi.closures/cls_ushort.c |   3 +
 libffi/testsuite/libffi.closures/ffitest.h    | 145 +---
 .../testsuite/libffi.closures/huge_struct.c   |  45 +-
 .../testsuite/libffi.closures/nested_struct.c |  39 +-
 .../libffi.closures/nested_struct10.c         |  12 +
 .../libffi.closures/nested_struct11.c         |  26 +-
 .../libffi.closures/nested_struct12.c         |   2 +-
 .../libffi.closures/nested_struct13.c         |  20 +-
 .../libffi.closures/nested_struct2.c          |   9 +
 .../libffi.closures/nested_struct3.c          |   9 +
 .../libffi.closures/nested_struct4.c          |   9 +
 .../libffi.closures/nested_struct5.c          |   9 +
 .../libffi.closures/nested_struct6.c          |  11 +
 .../libffi.closures/nested_struct7.c          |   9 +
 .../libffi.closures/nested_struct8.c          |  11 +
 .../libffi.closures/nested_struct9.c          |  11 +
 .../testsuite/libffi.closures/testclosure.c   |   5 +
 .../testsuite/libffi.closures/unwindtest.cc   |   5 +-
 .../libffi.closures/unwindtest_ffi_call.cc    |   3 +
 libffi/testsuite/libffi.complex/complex_int.c |   2 +-
 libffi/testsuite/libffi.threads/ffitest.h     |   1 +
 libffi/testsuite/libffi.threads/threads.exp   |  50 ++
 libffi/testsuite/libffi.threads/tsan.c        |  74 ++
 208 files changed, 9009 insertions(+), 2233 deletions(-)
 create mode 100644 libffi/src/pa/ffi64.c
 create mode 100644 libffi/src/pa/hpux64.S
 create mode 100644 libffi/src/powerpc/internal.h
 create mode 100644 libffi/src/powerpc/t-aix
 create mode 100644 libffi/src/wasm/ffi.c
 create mode 100644 libffi/src/wasm/ffitarget.h
 create mode 100755 libffi/testsuite/emscripten/build-tests.sh
 create mode 100755 libffi/testsuite/emscripten/build.sh
 create mode 100644 libffi/testsuite/emscripten/conftest.py
 create mode 100755 libffi/testsuite/emscripten/node-tests.sh
 create mode 100644 libffi/testsuite/emscripten/test.html
 create mode 100644 libffi/testsuite/emscripten/test_libffi.py
 create mode 100644 libffi/testsuite/libffi.call/bpo_38748.c
 create mode 100644 libffi/testsuite/libffi.call/callback.c
 create mode 100644 libffi/testsuite/libffi.call/callback2.c
 create mode 100644 libffi/testsuite/libffi.call/callback3.c
 create mode 100644 libffi/testsuite/libffi.call/callback4.c
 create mode 100644 libffi/testsuite/libffi.call/longjmp.c
 create mode 100644 libffi/testsuite/libffi.call/overread.c
 create mode 100644 libffi/testsuite/libffi.call/pyobjc_tc.c
 create mode 100644 libffi/testsuite/libffi.call/s55.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_2.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_3.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_3f.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_4.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_4f.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_big.c
 create mode 100644 libffi/testsuite/libffi.call/struct_by_value_small.c
 create mode 100644 libffi/testsuite/libffi.call/struct_int_float.c
 create mode 100644 libffi/testsuite/libffi.call/struct_return_2H.c
 create mode 100644 libffi/testsuite/libffi.call/struct_return_8H.c
 create mode 100644 libffi/testsuite/libffi.call/va_3.c
 create mode 100644 libffi/testsuite/libffi.call/x32.c
 create mode 100644 libffi/testsuite/libffi.threads/ffitest.h
 create mode 100644 libffi/testsuite/libffi.threads/threads.exp
 create mode 100644 libffi/testsuite/libffi.threads/tsan.c
-- 
2.43.0

Reply via email to