Skip to content

Commit b5aeaa6

Browse files
committed
Revert "Reland "[vm/ffi] SimDBC on Arm64 Android""
This reverts commit a515a0c. Reason for revert: There are still issues here, the flutter engine build for ios_debug again fails with this error: ld: warning: arm64 function not 4-byte aligned: FfiTrampolineCall from obj/third_party/dart/runtime/vm/compiler/libdart_vm_jit.ffi_dbc_trampoline_arm64.o ld: warning: arm64 function not 4-byte aligned: .loop from obj/third_party/dart/runtime/vm/compiler/libdart_vm_jit.ffi_dbc_trampoline_arm64.o ld: warning: arm64 function not 4-byte aligned: .done from obj/third_party/dart/runtime/vm/compiler/libdart_vm_jit.ffi_dbc_trampoline_arm64.o Undefined symbols for architecture arm64: "_FfiTrampolineCall", referenced from: dart::Simulator::Call(dart::Code const&, dart::Array const&, dart::Array const&, dart::Thread*) in libdart_vm_jit.simulator_dbc.o ld: symbol(s) not found for architecture arm64 Original change's description: > Reland "[vm/ffi] SimDBC on Arm64 Android" > > This reverts commit 0abff7b and fixes the assembly file. > > Change-Id: Ibef58c932c843aebb4de227ac5fc7664d463173f > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107746 > Auto-Submit: Daco Harkes <dacoharkes@google.com> > Reviewed-by: Samir Jindel <sjindel@google.com> > Commit-Queue: Daco Harkes <dacoharkes@google.com> TBR=sjindel@google.com,asiva@google.com,dacoharkes@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ia5fd52180f7d9dfce588db361ce17dfb6f05254d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108206 Reviewed-by: Siva Annamalai <asiva@google.com>
1 parent 02fe07b commit b5aeaa6

File tree

5 files changed

+6
-76
lines changed

5 files changed

+6
-76
lines changed

runtime/vm/compiler/compiler_sources.gni

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -152,12 +152,9 @@ compiler_sources = [
152152
#
153153
# Not that this diverges from our convention to build every file on every OS
154154
# but have ifdef guards which make the files empty on some configurations.
155-
if (!is_win) {
155+
if (is_linux || is_mac) {
156156
# MASM on Windows does not support c preproccesor style flags.
157-
compiler_sources += [
158-
"ffi_dbc_trampoline_arm64.S",
159-
"ffi_dbc_trampoline_x64_linux_mac.S",
160-
]
157+
compiler_sources += [ "ffi_dbc_trampoline_x64_linux_mac.S" ]
161158
}
162159

163160
compiler_sources_tests = [

runtime/vm/compiler/ffi_dbc_trampoline.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99

1010
namespace dart {
1111

12-
#if !defined(HOST_OS_WINDOWS) && \
13-
(defined(HOST_ARCH_X64) || defined(HOST_ARCH_ARM64))
12+
#if defined(HOST_ARCH_X64) && !defined(HOST_OS_WINDOWS)
1413

1514
// Generic Trampoline for DBC dart:ffi calls. Argument needs to be layed out as
1615
// a FfiMarshalledArguments.

runtime/vm/compiler/ffi_dbc_trampoline_arm64.S

Lines changed: 0 additions & 65 deletions
This file was deleted.

runtime/vm/dart_api_impl.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -300,9 +300,8 @@ class Api : AllStatic {
300300
#if defined(TARGET_ARCH_DBC) && !defined(ARCH_IS_64_BIT)
301301
// TODO(36809): Support SimDBC32.
302302
return false;
303-
#elif defined(TARGET_ARCH_DBC) && \
304-
!(defined(HOST_ARCH_X64) || defined(HOST_ARCH_ARM64))
305-
// TODO(36809): Support ia32 and arm.
303+
#elif defined(TARGET_ARCH_DBC) && !defined(HOST_ARCH_X64)
304+
// TODO(35773): Support ia32, arm64, and arm.
306305
return false;
307306
#elif defined(TARGET_ARCH_DBC) && defined(HOST_ARCH_X64) && \
308307
defined(HOST_OS_WINDOWS)

tests/ffi/ffi.status

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ function_callbacks_test/03: Skip
2424
[ $arch == arm && $system != android ]
2525
*: Skip # "hardfp" calling convention is not yet supported (iOS is also supported but not tested): dartbug.com/36309
2626

27-
[ $arch == simdbc64 && $system != android && $system != linux && $system != macos ]
27+
[ $arch == simdbc64 && $system != linux && $system != macos ]
2828
*: Skip # FFI not yet supported outside x64 Linux: dartbug.com/36809
2929

3030
[ $runtime != dart_precompiled && $runtime != vm ]

0 commit comments

Comments
 (0)