petersn [Tue, 27 Oct 2020 14:02:36 +0000 (07:02 -0700)]
Removing unnecessary instruction from ffi_call_unix64 (#588)
unix64.S's `ffi_call_unix64` looks like it used to take six parameters,
where the sixth said the number of SSE register arguments. However,
currently the function only takes five parameters, and the number of SSE
register arguments is encoded in the `struct register_args *` passed as
the first parameter to `ffi_call_unix64`. This change removes an
instruction that tries to use this missing sixth parameter as the number
of SSE arguments.
This fix should not change any behavior, nor fix any bugs, because a few
instructions later the value moved from %r9d into %eax is overwritten by
the correct value anyway. This change merely makes the code a tad less
confusing, because currently the assembly moves from a register (r9)
whose value is never set.
jacobly0 [Tue, 27 Oct 2020 14:00:03 +0000 (10:00 -0400)]
Fix read-only .eh_frame section test when CFLAGS contains -flto. (#590)
Alan Modra [Tue, 27 Oct 2020 13:06:21 +0000 (23:36 +1030)]
Power10 libffi fixes (#585)
Power10 pc-relative code doesn't use or preserve r2 as a TOC pointer.
That means calling between pc-relative and TOC using code can't be
done without intervening linker stubs, and a call from TOC code to
pc-relative code must have a nop after the bl in order to restore r2.
Now the PowerPC libffi assembly code doesn't use r2 except for the
implicit use when making calls back to C, ffi_closure_helper_LINUX64
and ffi_prep_args64. So changing the assembly to interoperate with
pc-relative code without stubs is easily done.
* src/powerpc/linux64.S (ffi_call_LINUX64): Don't emit global
entry when __PCREL__. Call using @notoc. Add nops.
* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
(ffi_go_closure_linux64): Likewise.
Tim Gates [Sun, 11 Oct 2020 04:07:40 +0000 (15:07 +1100)]
docs: fix simple typo, paramters -> parameters (#589)
There is a small typo in src/x86/ffi.c.
Should read `parameters` rather than `paramters`.
Anthony Green [Wed, 19 Aug 2020 12:34:09 +0000 (08:34 -0400)]
Re-enable s390x testing
Niclas Zeising [Fri, 7 Aug 2020 19:05:23 +0000 (21:05 +0200)]
Upstream local FreeBSD patches (#567)
* Add support for FreeBSD mips
Add support for FreeBSD mips, this has been a local patch in the FreeBSD
ports tree for quite some time.
Originally submitted by sson, and committed by sbruno AT FreeBSD DOT org
See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191909 for
background details.
Signed-off-by: Niclas Zeising <zeising@daemonic.se>
* Add support for FreeBSD powerpcspe
Add support for powerpcspe on FreeBSD
This has been in the FreeBSD ports tree for some time.
Originally submitted by jhibbits AT FreeBSD DOT org.
Signed-off-by: Niclas Zeising <zeising@daemonic.se>
* Fix abort() on FreeBSD arm related to __clear_cache()
This patch has been in the FreeBSD ports tree for a number of years.
Original commit by koobs AT FreeBSD DOT org
Original commit message:
> devel/libffi: Fix abort() on ARM related to __clear_cache()
>
> The current FreeBSD/ARM __clear_cache() implementation does nothing #if
> __i386__ || __x86_64__ #else abort();
>
> cognet@ advises this is an issue for anything !Apple that is using the
> libcompiler_rt provided by Clang on ARM, and requires upstreaming.
See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=149167 for some
background details.
Signed-off-by: Niclas Zeising <zeising@daemonic.se>
Anthony Green [Thu, 6 Aug 2020 01:38:51 +0000 (21:38 -0400)]
Don't test s390. Travis-ci is broken.
Anthony Green [Wed, 5 Aug 2020 21:59:59 +0000 (17:59 -0400)]
Add support for eabisim back. This was removed upstream.
Tom Tromey [Tue, 4 Aug 2020 17:08:19 +0000 (11:08 -0600)]
Merge pull request #576 from froydnj/config-updates
update config.{guess,sub}
Nathan Froyd [Tue, 4 Aug 2020 16:17:04 +0000 (12:17 -0400)]
update config.{guess,sub}
This change is primarily for aarch64 macOS support, since that configuration
is now properly supported upstream.
Tom Tromey [Wed, 1 Jul 2020 15:32:37 +0000 (09:32 -0600)]
Merge pull request #570 from jwilk-forks/spelling
aarch64: Fix typo
Jakub Wilk [Tue, 30 Jun 2020 20:59:28 +0000 (22:59 +0200)]
aarch64: Fix typo
Ma Jun [Mon, 29 Jun 2020 12:02:20 +0000 (08:02 -0400)]
Add support for csky
M. Herdiansyah [Thu, 11 Jun 2020 12:40:24 +0000 (19:40 +0700)]
Makefile: increase compatibility with bmake (#551)
Andre Miras [Thu, 11 Jun 2020 12:38:59 +0000 (14:38 +0200)]
Fixes macOS build on Python 3 (#563)
The error was:
```
Traceback (most recent call last):
File "_generate-darwin-source-and-headers.py", line 209, in <module>
generate_source_and_headers(generate_osx=not args.only_ios, generate_ios=not args.only_osx)
File "_generate-darwin-source-and-headers.py", line 197, in generate_source_and_headers
for header_name, tag_tuples in platform_headers.iteritems():
AttributeError: 'collections.defaultdict' object has no attribute 'iteritems'
```
Kentaro Hayashi [Thu, 11 Jun 2020 12:37:41 +0000 (21:37 +0900)]
Fix Free software foundation address (#564)
ref. https://www.fsf.org/about/contact/
Anthony Green [Sun, 7 Jun 2020 18:31:06 +0000 (14:31 -0400)]
Add gcc bug tests back
Yann Sionneau [Fri, 1 May 2020 11:59:11 +0000 (13:59 +0200)]
Add support for Kalray KVX architecture (#559)
Andrew Geissler [Fri, 1 May 2020 11:58:30 +0000 (06:58 -0500)]
ffi_powerpc.h: fix build failure with powerpc7 (#561)
This is a patch pulled down from the following:
https://github.com/buildroot/buildroot/blob/
78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
This issue is being hit on OpenBMC code when pulling the latest
libffi tag and building on a P8 ppc64le machine. I verified this
patch fixes the issue we are seeing.
Below is the original commit message:
Sicne commit
73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7
fails on:
In file included from ../src/powerpc/ffi.c:33:0:
../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target
typedef _Float128 float128;
^~~~~~~~~
Fix this build failure by checking for __HAVE_FLOAT128 before using
_Float128, as _Float128 is enabled only on specific conditions, see
output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h:
/* Defined to 1 if the current compiler invocation provides a
floating-point type with the IEEE 754 binary128 format, and this glibc
includes corresponding *f128 interfaces for it. */
#if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \
&& defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH
# define __HAVE_FLOAT128 1
#else
# define __HAVE_FLOAT128 0
#endif
Fixes:
- http://autobuild.buildroot.org/results/
5c9dd8fb3b6a128882b6250f197c80232d8a3b53
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Co-authored-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Martin Storsjö [Sun, 26 Apr 2020 02:02:14 +0000 (05:02 +0300)]
arm: Fix the clang specific version of the assembly (#556)
Also fix the same error in the comment for the non-clang case.
That typo there seems to have existed since the code was written
in that form, in
e7f15f60e86 - and when the clang specific codepath
was added in
e3d2812ce43, the typo in the comment made it into the
actual code.
Martin Storsjö [Sun, 26 Apr 2020 02:01:03 +0000 (05:01 +0300)]
win64_armasm: Fix the spelling of ALIGN (#553)
Martin Storsjö [Sun, 26 Apr 2020 01:59:35 +0000 (04:59 +0300)]
Use __builtin_ffs instead of ffs (#554)
USE_BUILTIN_FFS is defined to 1 within __GNUC__, and the __builtin_ffs
function is available since GCC 3.x at least, while the ffs function
only exists on some OSes.
This fixes compilation for non-x86 mingw platforms. For x86,
USE_BUILTIN_FFS is explicitly disabled for windows targets - but
if USE_BUILTIN_FFS is enabled based on __GNUC__, it should also use
the builtin which actually is available correspondingly, not dependent
on the target OS.
Martin Storsjö [Sun, 26 Apr 2020 01:58:33 +0000 (04:58 +0300)]
Fix building for aarch64 windows with mingw toolchains (#555)
* aarch64: Check _WIN32 instead of _M_ARM64 for detecting windows
This fixes building for aarch64 with mingw toolchains. _M_ARM64 is
predefined by MSVC, while mingw compilers predefine __aarch64__.
In aarch64 specific code, change checks for _M_ARM64 into checks for
_WIN32.
In arch independent code, check for
(defined(_M_ARM64) || defined(__aarch64__)) && defined(_WIN32)
instead of just _M_ARM64.
In src/closures.c, coalesce checks like
defined(X86_WIN32) || defined(X86_WIN64) || defined(_M_ARM64)
into plain defined(_WIN32). Technically, this enables code for
ARM32 windows where it wasn't, but as far as I can see it, those
codepaths should be fine for that architecture variant as well.
* aarch64: Only use armasm source when building with MSVC
When building for windows/arm64 with clang, the normal gas style .S
source works fine. sysv.S and win64_armasm.S seem to be functionally
equivalent, with only differences being due to assembler syntax.
Fangrui Song [Tue, 10 Mar 2020 11:36:09 +0000 (04:36 -0700)]
Improve read-write .eh_frame check (#546)
llvm-objdump -h does not print BFD SEC_* constants like "READONLY",
so the check will consider .eh_frame writable.
clang 11 (since https://reviews.llvm.org/D73999) will error for mismatching section flags.
Use readelf -S and check "WA" instead.
Moxie Bot [Tue, 10 Mar 2020 01:10:53 +0000 (21:10 -0400)]
Mention ARM Pointer Authentication
Moxie Bot [Tue, 10 Mar 2020 01:10:33 +0000 (21:10 -0400)]
Test on aarch64 Linux with clang
Ole André Vadla Ravnås [Tue, 10 Mar 2020 01:05:42 +0000 (02:05 +0100)]
Port to iOS/arm64e (#548)
Anthony Green [Mon, 9 Mar 2020 16:39:22 +0000 (12:39 -0400)]
Try to fix RLGL_KEY nonsense (#547)
* Try to fix RLGL_KEY nonsense
* Hard code policy bound API key
Co-authored-by: Anthony Green <green@moxielogic.com>
Moxie Bot [Mon, 24 Feb 2020 15:29:20 +0000 (10:29 -0500)]
Revamp PA_LINUX and PA_HPUX target closures to use function descriptors.
2020-02-23 John David Anglin <danglin@gcc.gnu.org>
* include/ffi.h.in (FFI_CLOSURE_PTR, FFI_RESTORE_PTR): Define.
* src/closures.c (ffi_closure_alloc): Convert closure pointer
return by malloc to function pointer.
(ffi_closure_free): Convert function pointer back to malloc pointer.
* src/pa/ffi.c (ffi_closure_inner_pa32): Use union to double word
align return address on stack. Adjust statements referencing return
address. Convert closure argument from function pointer to standard
closure pointer.
(ffi_prep_closure_loc): Likewise convert closure argument back to
closure pointer. Remove assembler trampolines. Setup simulated
function descriptor as on ia64.
src/pa/ffitarget.h (FFI_TRAMPOLINE_SIZE): Reduce to 12.
src/pa/hpux32.S (ffi_closure_pa32): Retrieve closure pointer and real
gp from fake gp value in register %r19.
src/pa/linux.S (ffi_closure_pa32): Likewise.
hjl-tools [Sun, 23 Feb 2020 15:45:42 +0000 (07:45 -0800)]
Update the ABI version to LIBFFI_BASE_8.0 (#544)
Since x86 and x86-64 FFI_TRAMPOLINE_SIZE have been increased, we must
bump the ABI version. This fixes:
https://github.com/libffi/libffi/issues/543
hjl-tools [Sat, 22 Feb 2020 14:32:22 +0000 (06:32 -0800)]
x86: Fix ffi_prep_closure_loc (#542)
Since FFI_TRAMPOLINE_SIZE is increased by 4 bytes to add ENDBR32, adjust
jump displacement by 4 bytes.
Moxie Bot [Sat, 22 Feb 2020 03:13:14 +0000 (22:13 -0500)]
Merge branch 'master' of github.com:/libffi/libffi
Moxie Bot [Sat, 22 Feb 2020 03:12:34 +0000 (22:12 -0500)]
Update for pending 3.4 release.
hjl-tools [Sat, 22 Feb 2020 03:08:06 +0000 (19:08 -0800)]
x86: Add indirect branch tracking support (#540)
Intel Control-flow Enforcement Technology (CET):
https://software.intel.com/en-us/articles/intel-sdm
contains shadow stack (SHSTK) and indirect branch tracking (IBT). When
CET is enabled, ELF object files must be marked with .note.gnu.property
section. When Intel CET is enabled, include <cet.h> in assembly codes
to mark Intel CET support.
Also when IBT is enabled, all indirect branch targets must start with
ENDBR instruction and notrack prefix can be used to disable IBT on
indirect branch. <cet.h> defines _CET_ENDBR which can be used in
assembly codes for ENDBR instruction. If <cet.h> isn't included,
define _CET_ENDBR as empty so that _CET_ENDBR can be used in assembly
codes.
Trampoline must be enlarged to add ENDBR instruction unconditionally,
which is NOP on non-CET processors. This is required regardless if
libffi is enabled with CET since libffi.so will be marked in legacy
bitmap, but trampoline won't. Update library version for larger
FFI_TRAMPOLINE_SIZE.
This fixed:
https://github.com/libffi/libffi/issues/474
Tested with
$ CC="gcc -Wl,-z,cet-report=error -fcf-protection" CXX="g++ -Wl,-z,cet-report=error -fcf-protection" .../configure
on Linux CET machines in i686, x32 and x86-64 modes.
Samuel Holland [Sat, 22 Feb 2020 03:06:15 +0000 (21:06 -0600)]
Update powerpc sysv assembly for ffi_powerpc.h changes (#541)
Some of the flag bits were moved when adding powerpc64 vector support.
Fixes #536
Anthony Green [Fri, 10 Jan 2020 15:22:10 +0000 (10:22 -0500)]
Update copyright year.
Anthony Green [Mon, 6 Jan 2020 02:37:05 +0000 (21:37 -0500)]
Fix script
Anthony Green [Mon, 6 Jan 2020 02:18:23 +0000 (21:18 -0500)]
Use rlgl API key on login
Khem Raj [Sat, 7 Dec 2019 10:34:14 +0000 (02:34 -0800)]
powerpc64: Use memcpy to help platforms with no __int128. (#534)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Anthony Green [Sat, 30 Nov 2019 12:37:19 +0000 (07:37 -0500)]
Remove 32-bit x86 file references to fix macosx builds
Carl Hurd [Fri, 29 Nov 2019 19:46:11 +0000 (14:46 -0500)]
Fixed missed #ifndef for __mips_soft_float (#442)
Thank you!
Anthony Green [Fri, 29 Nov 2019 19:29:51 +0000 (14:29 -0500)]
Clean up macosx builds
Anthony Green [Fri, 29 Nov 2019 12:00:35 +0000 (07:00 -0500)]
Address platforms with no __int128.
Anthony Green [Thu, 28 Nov 2019 23:58:40 +0000 (18:58 -0500)]
Make build errors easier to debug
Anthony Green [Thu, 28 Nov 2019 22:44:51 +0000 (17:44 -0500)]
Add powerpc-eabi
Anthony Green [Thu, 28 Nov 2019 22:31:44 +0000 (17:31 -0500)]
Test on powerpc-eabisim
Sergei Trofimovich [Thu, 28 Nov 2019 12:42:41 +0000 (12:42 +0000)]
powerpc: fix build failure on power7 and older (#532)
Build failure looks as:
```
libtool: compile: powerpc-unknown-linux-gnu-gcc \
-O2 -mcpu=powerpc -mtune=powerpc -pipe ... -c src/powerpc/ffi.c ...
In file included from src/powerpc/ffi.c:33:
src/powerpc/ffi_powerpc.h:65:9: error: '__int128' is not supported on this target
65 | typedef __int128 float128;
| ^~~~~~~~
```
The fix avoids using __int128 in favour of aligned char[16].
Closes: https://github.com/libffi/libffi/issues/531
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Anthony Green [Mon, 25 Nov 2019 03:47:48 +0000 (22:47 -0500)]
Run aarch64-linux-gnu tests on travi-ci directly
Anthony Green [Sun, 24 Nov 2019 21:52:14 +0000 (16:52 -0500)]
Fixes for ppc64le and s390x travis testing
Anthony Green [Sun, 24 Nov 2019 21:26:14 +0000 (16:26 -0500)]
Force the use of docker
Anthony Green [Sun, 24 Nov 2019 21:10:22 +0000 (16:10 -0500)]
Merge branch 'master' of github.com:libffi/libffi
Anthony Green [Sun, 24 Nov 2019 21:09:44 +0000 (16:09 -0500)]
Try travis-ci's new ppc64le and s390x support
Panayotis [Sun, 24 Nov 2019 16:25:13 +0000 (18:25 +0200)]
disable obsolete 32-bit targets in macOS (#511)
Anthony Green [Sun, 24 Nov 2019 16:11:25 +0000 (11:11 -0500)]
Minor clean-up
Anthony Green [Sat, 23 Nov 2019 15:24:58 +0000 (10:24 -0500)]
Move nested_struct3 test to closures directory
Anthony Green [Sat, 23 Nov 2019 14:42:04 +0000 (09:42 -0500)]
Add missing closing brace
Anthony Green [Sat, 23 Nov 2019 14:00:14 +0000 (09:00 -0500)]
Version 3.3
Anthony Green [Sat, 23 Nov 2019 13:48:53 +0000 (08:48 -0500)]
Remove junk file from dist
Anthony Green [Sat, 23 Nov 2019 12:49:58 +0000 (07:49 -0500)]
Account for moved test files
Anthony Green [Sat, 23 Nov 2019 12:44:26 +0000 (07:44 -0500)]
Add dejagnu directives accidentally removed
Anthony Green [Sat, 23 Nov 2019 00:49:38 +0000 (19:49 -0500)]
Move closure test to closure directory
Anthony Green [Sat, 23 Nov 2019 00:27:34 +0000 (19:27 -0500)]
More more closure tests to the closure test directory
Anthony Green [Fri, 22 Nov 2019 23:55:36 +0000 (18:55 -0500)]
Merge branch 'master' of github.com:libffi/libffi
Anthony Green [Fri, 22 Nov 2019 23:54:30 +0000 (18:54 -0500)]
Move closure tests so we can easily XFAIL them for some targets
Anthony Green [Fri, 22 Nov 2019 23:53:09 +0000 (18:53 -0500)]
Remove gccbug detection. GCC is good now.
Michael Haubenwallner [Fri, 22 Nov 2019 19:17:58 +0000 (20:17 +0100)]
Capture x86-windows host like x86_64-windows (#529)
Anthony Green [Fri, 22 Nov 2019 17:42:26 +0000 (12:42 -0500)]
Manual clean-ups, and include the PDF in the source distribution.
Anthony Green [Thu, 21 Nov 2019 10:36:06 +0000 (05:36 -0500)]
Mention more major port contributors
Anthony Green [Thu, 21 Nov 2019 10:04:54 +0000 (05:04 -0500)]
Update autoconf-archive m4 macros
Anthony Green [Thu, 21 Nov 2019 09:59:39 +0000 (04:59 -0500)]
Fix formatting of README.
Anthony Green [Wed, 20 Nov 2019 12:16:41 +0000 (07:16 -0500)]
Fix or1k lack-of-g++ checking in testsuite
Anthony Green [Wed, 20 Nov 2019 11:15:55 +0000 (06:15 -0500)]
Add work-around for users who manage their own closure memory
As suggested by DJ
Anthony Green [Tue, 19 Nov 2019 22:14:23 +0000 (17:14 -0500)]
No C++ for or1k-unknown-elf
Anthony Green [Tue, 19 Nov 2019 18:36:49 +0000 (13:36 -0500)]
No C++ for or1k
Anthony Green [Tue, 19 Nov 2019 15:07:16 +0000 (10:07 -0500)]
Disable type warnings for or1k.
Anthony Green [Tue, 19 Nov 2019 15:06:57 +0000 (10:06 -0500)]
No c++ for or1k-elf
Anthony Green [Mon, 18 Nov 2019 20:20:00 +0000 (15:20 -0500)]
Fake TRAVIS_BUILD_DIR
Anthony Green [Mon, 18 Nov 2019 20:13:16 +0000 (15:13 -0500)]
Adapt for new old ChangeLog file
Anthony Green [Mon, 18 Nov 2019 20:06:51 +0000 (15:06 -0500)]
Fix DEJAGNU variable
Anthony Green [Mon, 18 Nov 2019 19:54:14 +0000 (14:54 -0500)]
Set vars
Anthony Green [Mon, 18 Nov 2019 19:45:29 +0000 (14:45 -0500)]
Remove verbosity
Anthony Green [Mon, 18 Nov 2019 19:40:30 +0000 (14:40 -0500)]
Pull before running
Anthony Green [Mon, 18 Nov 2019 19:02:33 +0000 (14:02 -0500)]
Fix cross builds for or1k
Anthony Green [Mon, 18 Nov 2019 18:59:10 +0000 (13:59 -0500)]
More cross build debugging
Anthony Green [Mon, 18 Nov 2019 18:47:42 +0000 (13:47 -0500)]
Set path to simulator. Add debugging output.
Anthony Green [Mon, 18 Nov 2019 18:17:27 +0000 (13:17 -0500)]
Be specific when building CI container images
Anthony Green [Mon, 18 Nov 2019 18:06:26 +0000 (13:06 -0500)]
Capture more or1k hosts
Anthony Green [Mon, 18 Nov 2019 18:02:44 +0000 (13:02 -0500)]
Add test support for or1k. Fix yaml typo.
Anthony Green [Mon, 18 Nov 2019 17:25:51 +0000 (12:25 -0500)]
Fix typo for m32r and bfin builds
Anthony Green [Mon, 18 Nov 2019 11:35:19 +0000 (06:35 -0500)]
Merge branch 'master' of github.com:libffi/libffi
Anthony Green [Mon, 18 Nov 2019 11:34:42 +0000 (06:34 -0500)]
Build/test for m32r-elf and bfin-elf
Anthony Green [Sun, 17 Nov 2019 14:19:14 +0000 (09:19 -0500)]
Mention binary128 long double support for Power
Samuel Holland [Sun, 17 Nov 2019 13:22:25 +0000 (07:22 -0600)]
IEEE754 binary128 long double support for PowerPC64 (#526)
* powerpc: Adjust flags to make room for vector types
* powerpc64 ELFv2 IEEE128 long double support
Anthony Green [Fri, 15 Nov 2019 16:18:59 +0000 (11:18 -0500)]
Re-enable mingw32 tests.
Anthony Green [Fri, 15 Nov 2019 16:06:17 +0000 (11:06 -0500)]
Disable wine builds.
Anthony Green [Fri, 15 Nov 2019 15:19:00 +0000 (10:19 -0500)]
Stretch out timeout for test
Anthony Green [Fri, 15 Nov 2019 11:07:51 +0000 (06:07 -0500)]
Consolidate all of the old ChangeLog files into ChangeLog.old.
Anthony Green [Wed, 13 Nov 2019 15:07:00 +0000 (10:07 -0500)]
Don't build aarch64-linux-gnu
Anthony Green [Wed, 13 Nov 2019 15:05:36 +0000 (10:05 -0500)]
Extend timeout for builds.
Anthony Green [Wed, 13 Nov 2019 14:15:05 +0000 (09:15 -0500)]
Platform test tweaks