Hi hj,

libffi-3.4.2's new static trampoline feature is known to break some
downstream packages with some specific use (or misuse?) of libffi,
unexpected by the libffi developers.  For example
https://gitlab.gnome.org/GNOME/gjs/-/issues/428.

I've not use gccgo recently, so I don't know if it might break something
here.  Just a reminder, if the regtest on x86 and arm (32-bit and 64-
bit, they are the only platforms where libffi enables static trampoline)
is OK there should be no problem.

On Tue, 2021-08-31 at 08:36 -0700, H.J. Lu via Gcc-patches wrote:
> Merged commit: f9ea41683444ebe11cfa45b05223899764df28fb
> ---
>  libffi/.gitattributes                         |     4 +
>  libffi/ChangeLog.libffi                       |  7743 +++++-
>  libffi/LICENSE                                |     2 +-
>  libffi/LICENSE-BUILDTOOLS                     |   353 +
>  libffi/MERGE                                  |     4 +
>  libffi/Makefile.am                            |   249 +-
>  libffi/Makefile.in                            |  1944 --
>  libffi/README                                 |   450 -
>  libffi/README.md                              |   495 +
>  libffi/acinclude.m4                           |    38 +-
>  libffi/aclocal.m4                             |  1202 -
>  libffi/configure                              | 19411 ----------------
>  libffi/configure.ac                           |   199 +-
>  libffi/configure.host                         |    97 +-
>  libffi/doc/Makefile.am                        |     3 +
>  libffi/doc/libffi.texi                        |   382 +-
>  libffi/doc/version.texi                       |     8 +-
>  libffi/fficonfig.h.in                         |   208 -
>  libffi/generate-darwin-source-and-headers.py  |   143 +-
>  libffi/include/Makefile.am                    |     8 +-
>  libffi/include/Makefile.in                    |   565 -
>  libffi/include/ffi.h.in                       |   213 +-
>  libffi/include/ffi_cfi.h                      |    21 +
>  libffi/include/ffi_common.h                   |    50 +-
>  libffi/include/tramp.h                        |    45 +
>  libffi/libffi.map.in                          |    24 +-
>  libffi/libffi.pc.in                           |     2 +-
>  libffi/libffi.xcodeproj/project.pbxproj       |   530 +-
>  libffi/libtool-version                        |    25 +-
>  libffi/man/Makefile.in                        |   515 -
>  libffi/mdate-sh                               |   205 -
>  libffi/msvcc.sh                               |   134 +-
>  libffi/src/aarch64/ffi.c                      |   536 +-
>  libffi/src/aarch64/ffitarget.h                |    35 +-
>  libffi/src/aarch64/internal.h                 |    33 +
>  libffi/src/aarch64/sysv.S                     |   189 +-
>  libffi/src/aarch64/win64_armasm.S             |   506 +
>  libffi/src/alpha/ffi.c                        |     6 +-
>  libffi/src/arc/ffi.c                          |     6 +-
>  libffi/src/arm/ffi.c                          |   380 +-
>  libffi/src/arm/ffitarget.h                    |    24 +-
>  libffi/src/arm/internal.h                     |    10 +
>  libffi/src/arm/sysv.S                         |   304 +-
>  libffi/src/arm/sysv_msvc_arm32.S              |   311 +
>  libffi/src/closures.c                         |   489 +-
>  libffi/src/cris/ffi.c                         |     4 +-
>  libffi/src/csky/ffi.c                         |   395 +
>  libffi/src/csky/ffitarget.h                   |    63 +
>  libffi/src/csky/sysv.S                        |   371 +
>  libffi/src/dlmalloc.c                         |     7 +-
>  libffi/src/frv/ffi.c                          |     4 +-
>  libffi/src/ia64/ffi.c                         |    30 +-
>  libffi/src/ia64/ffitarget.h                   |     3 +-
>  libffi/src/ia64/unix.S                        |     9 +-
>  libffi/src/java_raw_api.c                     |     6 +-
>  libffi/src/kvx/asm.h                          |     5 +
>  libffi/src/kvx/ffi.c                          |   273 +
>  libffi/src/kvx/ffitarget.h                    |    75 +
>  libffi/src/kvx/sysv.S                         |   127 +
>  libffi/src/m32r/ffi.c                         |     2 +-
>  libffi/src/m68k/ffi.c                         |     4 +-
>  libffi/src/m68k/sysv.S                        |    29 +-
>  libffi/src/m88k/ffi.c                         |     8 +-
>  libffi/src/metag/ffi.c                        |    14 +-
>  libffi/src/microblaze/ffi.c                   |    10 +-
>  libffi/src/mips/ffi.c                         |   146 +-
>  libffi/src/mips/ffitarget.h                   |    23 +-
>  libffi/src/mips/n32.S                         |   151 +-
>  libffi/src/mips/o32.S                         |   177 +-
>  libffi/src/moxie/eabi.S                       |     2 +-
>  libffi/src/moxie/ffi.c                        |    27 +-
>  libffi/src/nios2/ffi.c                        |     4 +-
>  libffi/src/pa/ffi.c                           |   216 +-
>  libffi/src/pa/ffitarget.h                     |    11 +-
>  libffi/src/pa/hpux32.S                        |    76 +-
>  libffi/src/pa/linux.S                         |   160 +-
>  libffi/src/powerpc/asm.h                      |     4 +-
>  libffi/src/powerpc/darwin_closure.S           |     6 +-
>  libffi/src/powerpc/ffi.c                      |    10 +-
>  libffi/src/powerpc/ffi_darwin.c               |    48 +-
>  libffi/src/powerpc/ffi_linux64.c              |   247 +-
>  libffi/src/powerpc/ffi_powerpc.h              |    25 +-
>  libffi/src/powerpc/ffitarget.h                |    14 +-
>  libffi/src/powerpc/linux64.S                  |   111 +-
>  libffi/src/powerpc/linux64_closure.S          |    70 +-
>  libffi/src/powerpc/sysv.S                     |    12 +-
>  libffi/src/prep_cif.c                         |    64 +-
>  libffi/src/raw_api.c                          |    10 +-
>  libffi/src/riscv/ffi.c                        |    16 +-
>  libffi/src/sparc/ffi.c                        |     6 +-
>  libffi/src/sparc/ffi64.c                      |    18 +-
>  libffi/src/tramp.c                            |   729 +
>  libffi/src/types.c                            |     4 +-
>  libffi/src/vax/ffi.c                          |     4 +-
>  libffi/src/x86/asmnames.h                     |    30 +
>  libffi/src/x86/darwin.S                       |   444 -
>  libffi/src/x86/darwin64.S                     |   416 -
>  libffi/src/x86/darwin64_c.c                   |   643 -
>  libffi/src/x86/darwin_c.c                     |   843 -
>  libffi/src/x86/ffi.c                          |   162 +-
>  libffi/src/x86/ffi64.c                        |   164 +-
>  libffi/src/x86/ffitarget.h                    |    42 +-
>  libffi/src/x86/ffiw64.c                       |   114 +-
>  libffi/src/x86/internal.h                     |    14 +
>  libffi/src/x86/internal64.h                   |    14 +
>  libffi/src/x86/sysv.S                         |   215 +-
>  libffi/src/x86/sysv_intel.S                   |   995 +
>  libffi/src/x86/unix64.S                       |   204 +-
>  libffi/src/x86/win64.S                        |   170 +-
>  libffi/src/x86/win64_intel.S                  |   238 +
>  libffi/src/xtensa/ffi.c                       |     4 +-
>  libffi/src/xtensa/sysv.S                      |     7 +-
>  libffi/testsuite/Makefile.am                  |   206 +-
>  libffi/testsuite/Makefile.in                  |   572 -
>  libffi/testsuite/lib/libffi.exp               |   314 +-
>  libffi/testsuite/libffi.bhaible/Makefile      |    28 +
>  libffi/testsuite/libffi.bhaible/README        |    78 +
>  libffi/testsuite/libffi.bhaible/alignof.h     |    50 +
>  libffi/testsuite/libffi.bhaible/bhaible.exp   |    63 +
>  libffi/testsuite/libffi.bhaible/test-call.c   |  1745 ++
>  .../testsuite/libffi.bhaible/test-callback.c  |  2885 +++
>  libffi/testsuite/libffi.bhaible/testcases.c   |   747 +
>  libffi/testsuite/libffi.call/align_mixed.c    |    46 +
>  libffi/testsuite/libffi.call/align_stdcall.c  |    46 +
>  libffi/testsuite/libffi.call/call.exp         |    28 +-
>  libffi/testsuite/libffi.call/cls_uchar_va.c   |    44 -
>  libffi/testsuite/libffi.call/cls_ushort_va.c  |    44 -
>  libffi/testsuite/libffi.call/ffitest.h        |    13 +-
>  libffi/testsuite/libffi.call/float2.c         |    23 +-
>  libffi/testsuite/libffi.call/offsets.c        |    46 +
>  libffi/testsuite/libffi.call/struct10.c       |    57 +
>  libffi/testsuite/libffi.call/va_1.c           |   120 +-
>  libffi/testsuite/libffi.call/va_2.c           |   196 +
>  libffi/testsuite/libffi.closures/closure.exp  |    67 +
>  .../closure_fn0.c                             |     0
>  .../closure_fn1.c                             |     0
>  .../closure_fn2.c                             |     0
>  .../closure_fn3.c                             |     0
>  .../closure_fn4.c                             |     0
>  .../closure_fn5.c                             |     0
>  .../closure_fn6.c                             |     0
>  .../closure_loc_fn0.c                         |     3 +
>  .../closure_simple.c                          |     0
>  .../cls_12byte.c                              |     0
>  .../cls_16byte.c                              |     0
>  .../cls_18byte.c                              |     0
>  .../cls_19byte.c                              |     0
>  .../cls_1_1byte.c                             |     0
>  .../cls_20byte.c                              |     2 +-
>  .../cls_20byte1.c                             |     2 +-
>  .../cls_24byte.c                              |     6 +-
>  .../cls_2byte.c                               |     0
>  .../cls_3_1byte.c                             |     0
>  .../cls_3byte1.c                              |     0
>  .../cls_3byte2.c                              |     0
>  libffi/testsuite/libffi.closures/cls_3float.c |    95 +
>  .../cls_4_1byte.c                             |     0
>  .../cls_4byte.c                               |     0
>  .../cls_5_1_byte.c                            |     2 +-
>  .../cls_5byte.c                               |     2 +-
>  .../cls_64byte.c                              |     0
>  .../cls_6_1_byte.c                            |     2 +-
>  .../cls_6byte.c                               |     2 +-
>  .../cls_7_1_byte.c                            |     2 +-
>  .../cls_7byte.c                               |     2 +-
>  .../cls_8byte.c                               |     0
>  .../cls_9byte1.c                              |     2 +-
>  .../cls_9byte2.c                              |     2 +-
>  .../cls_align_double.c                        |     2 +-
>  .../cls_align_float.c                         |     2 +-
>  .../cls_align_longdouble.c                    |     2 +-
>  .../cls_align_longdouble_split.c              |     2 +-
>  .../cls_align_longdouble_split2.c             |     2 +-
>  .../cls_align_pointer.c                       |     2 +-
>  .../cls_align_sint16.c                        |     2 +-
>  .../cls_align_sint32.c                        |     2 +-
>  .../cls_align_sint64.c                        |     2 +-
>  .../cls_align_uint16.c                        |     2 +-
>  .../cls_align_uint32.c                        |     2 +-
>  .../cls_align_uint64.c                        |     2 +-
>  .../cls_dbls_struct.c                         |     6 +-
>  .../cls_double.c                              |     0
>  .../cls_double_va.c                           |     0
>  .../cls_float.c                               |     0
>  .../cls_longdouble.c                          |     0
>  .../cls_longdouble_va.c                       |     0
>  .../cls_many_mixed_args.c                     |     0
>  .../cls_many_mixed_float_double.c             |     0
>  .../cls_multi_schar.c                         |     2 +-
>  .../cls_multi_sshort.c                        |     2 +-
>  .../cls_multi_sshortchar.c                    |     2 +-
>  .../cls_multi_uchar.c                         |     2 +-
>  .../cls_multi_ushort.c                        |     2 +-
>  .../cls_multi_ushortchar.c                    |     2 +-
>  .../cls_pointer.c                             |     0
>  .../cls_pointer_stack.c                       |     0
>  .../cls_schar.c                               |     0
>  .../cls_sint.c                                |     0
>  .../cls_sshort.c                              |     0
>  .../cls_struct_va1.c                          |     0
>  .../cls_uchar.c                               |     0
>  .../cls_uint.c                                |     0
>  .../cls_uint_va.c                             |     0
>  .../cls_ulong_va.c                            |     0
>  .../cls_ulonglong.c                           |     0
>  .../cls_ushort.c                              |     0
>  .../err_bad_abi.c                             |     0
>  libffi/testsuite/libffi.closures/ffitest.h    |   144 +
>  .../huge_struct.c                             |     4 +-
>  .../nested_struct.c                           |     2 +-
>  .../nested_struct1.c                          |     2 +-
>  .../nested_struct10.c                         |     1 +
>  .../nested_struct11.c                         |     0
>  .../libffi.closures/nested_struct12.c         |    86 +
>  .../nested_struct13.c}                        |    14 +-
>  .../nested_struct2.c                          |     2 +-
>  .../nested_struct3.c                          |     2 +-
>  .../nested_struct4.c                          |     0
>  .../nested_struct5.c                          |     0
>  .../nested_struct6.c                          |     0
>  .../nested_struct7.c                          |     0
>  .../nested_struct8.c                          |     0
>  .../nested_struct9.c                          |     0
>  .../problem1.c                                |     0
>  .../libffi.closures/single_entry_structs1.c   |    86 +
>  .../libffi.closures/single_entry_structs2.c   |   102 +
>  .../libffi.closures/single_entry_structs3.c   |   101 +
>  .../stret_large.c                             |     0
>  .../stret_large2.c                            |     0
>  .../stret_medium.c                            |     2 +-
>  .../stret_medium2.c                           |     2 +-
>  .../testclosure.c                             |     2 +-
>  .../unwindtest.cc                             |    13 +-
>  .../unwindtest_ffi_call.cc                    |     5 +-
>  libffi/testsuite/libffi.go/static-chain.h     |     6 -
>  libffi/testsuite/libffi.special/ffitestcxx.h  |    96 -
>  libffi/testsuite/libffi.special/special.exp   |    35 -
>  237 files changed, 24334 insertions(+), 30607 deletions(-)
>  create mode 100644 libffi/.gitattributes
>  create mode 100644 libffi/LICENSE-BUILDTOOLS
>  create mode 100644 libffi/MERGE
>  delete mode 100644 libffi/Makefile.in
>  delete mode 100644 libffi/README
>  create mode 100644 libffi/README.md
>  delete mode 100644 libffi/aclocal.m4
>  delete mode 100755 libffi/configure
>  create mode 100644 libffi/doc/Makefile.am
>  delete mode 100644 libffi/fficonfig.h.in
>  mode change 100644 => 100755 libffi/generate-darwin-source-and-
> headers.py
>  delete mode 100644 libffi/include/Makefile.in
>  create mode 100644 libffi/include/tramp.h
>  delete mode 100644 libffi/man/Makefile.in
>  delete mode 100644 libffi/mdate-sh
>  create mode 100644 libffi/src/aarch64/win64_armasm.S
>  create mode 100644 libffi/src/arm/sysv_msvc_arm32.S
>  create mode 100644 libffi/src/csky/ffi.c
>  create mode 100644 libffi/src/csky/ffitarget.h
>  create mode 100644 libffi/src/csky/sysv.S
>  create mode 100644 libffi/src/kvx/asm.h
>  create mode 100644 libffi/src/kvx/ffi.c
>  create mode 100644 libffi/src/kvx/ffitarget.h
>  create mode 100644 libffi/src/kvx/sysv.S
>  create mode 100644 libffi/src/tramp.c
>  create mode 100644 libffi/src/x86/asmnames.h
>  delete mode 100644 libffi/src/x86/darwin.S
>  delete mode 100644 libffi/src/x86/darwin64.S
>  delete mode 100644 libffi/src/x86/darwin64_c.c
>  delete mode 100644 libffi/src/x86/darwin_c.c
>  create mode 100644 libffi/src/x86/sysv_intel.S
>  create mode 100644 libffi/src/x86/win64_intel.S
>  delete mode 100644 libffi/testsuite/Makefile.in
>  create mode 100644 libffi/testsuite/libffi.bhaible/Makefile
>  create mode 100644 libffi/testsuite/libffi.bhaible/README
>  create mode 100644 libffi/testsuite/libffi.bhaible/alignof.h
>  create mode 100644 libffi/testsuite/libffi.bhaible/bhaible.exp
>  create mode 100644 libffi/testsuite/libffi.bhaible/test-call.c
>  create mode 100644 libffi/testsuite/libffi.bhaible/test-callback.c
>  create mode 100644 libffi/testsuite/libffi.bhaible/testcases.c
>  create mode 100644 libffi/testsuite/libffi.call/align_mixed.c
>  create mode 100644 libffi/testsuite/libffi.call/align_stdcall.c
>  delete mode 100644 libffi/testsuite/libffi.call/cls_uchar_va.c
>  delete mode 100644 libffi/testsuite/libffi.call/cls_ushort_va.c
>  create mode 100644 libffi/testsuite/libffi.call/offsets.c
>  create mode 100644 libffi/testsuite/libffi.call/struct10.c
>  create mode 100644 libffi/testsuite/libffi.call/va_2.c
>  create mode 100644 libffi/testsuite/libffi.closures/closure.exp
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn0.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn1.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn2.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn3.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn4.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn5.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/closure_fn6.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/closure_loc_fn0.c (96%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/closure_simple.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_12byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_16byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_18byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_19byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_1_1byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_20byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_20byte1.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_24byte.c
> (95%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_2byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_3_1byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_3byte1.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_3byte2.c
> (100%)
>  create mode 100644 libffi/testsuite/libffi.closures/cls_3float.c
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_4_1byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_4byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_5_1_byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_5byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_64byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_6_1_byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_6byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_7_1_byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_7byte.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_8byte.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_9byte1.c
> (97%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_9byte2.c
> (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_double.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_float.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_longdouble.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_longdouble_split.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_longdouble_split2.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_pointer.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_sint16.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_sint32.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_sint64.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_uint16.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_uint32.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_align_uint64.c (97%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_dbls_struct.c (92%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_double.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_double_va.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_float.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_longdouble.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_longdouble_va.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_many_mixed_args.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_many_mixed_float_double.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_schar.c (96%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_sshort.c (96%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_sshortchar.c (96%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_uchar.c (96%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_ushort.c (95%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_multi_ushortchar.c (96%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_pointer.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_pointer_stack.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_schar.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_sint.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_sshort.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_struct_va1.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_uchar.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_uint.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_uint_va.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_ulong_va.c
> (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/cls_ulonglong.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/cls_ushort.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/err_bad_abi.c
> (100%)
>  create mode 100644 libffi/testsuite/libffi.closures/ffitest.h
>  rename libffi/testsuite/{libffi.call => libffi.closures}/huge_struct.c
> (99%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct1.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct10.c (99%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct11.c (100%)
>  create mode 100644 libffi/testsuite/libffi.closures/nested_struct12.c
>  rename libffi/testsuite/{libffi.call/nested_struct12.c =>
> libffi.closures/nested_struct13.c} (88%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct2.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct3.c (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct4.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct5.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct6.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct7.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct8.c (100%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/nested_struct9.c (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/problem1.c
> (100%)
>  create mode 100644
> libffi/testsuite/libffi.closures/single_entry_structs1.c
>  create mode 100644
> libffi/testsuite/libffi.closures/single_entry_structs2.c
>  create mode 100644
> libffi/testsuite/libffi.closures/single_entry_structs3.c
>  rename libffi/testsuite/{libffi.call => libffi.closures}/stret_large.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/stret_large2.c
> (100%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/stret_medium.c
> (98%)
>  rename libffi/testsuite/{libffi.call =>
> libffi.closures}/stret_medium2.c (98%)
>  rename libffi/testsuite/{libffi.call => libffi.closures}/testclosure.c
> (95%)
>  rename libffi/testsuite/{libffi.special =>
> libffi.closures}/unwindtest.cc (95%)
>  rename libffi/testsuite/{libffi.special =>
> libffi.closures}/unwindtest_ffi_call.cc (94%)
>  delete mode 100644 libffi/testsuite/libffi.special/ffitestcxx.h
>  delete mode 100644 libffi/testsuite/libffi.special/special.exp
> 
> https://gitlab.com/x86-gcc/gcc/-/commit/667397efc8307e45ca6ddec737b0caf8ca9d0fda

-- 
Xi Ruoyao <xry...@mengyan1223.wang>
School of Aerospace Science and Technology, Xidian University

Reply via email to