43382ded6d
Also removed some redundant test code. Change-Id: Idbb343d35592816814d473de2317324029481c6f Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-kernel-mac-debug-x64-try,vm-kernel-reload-mac-debug-simdbc64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105590 Commit-Queue: Samir Jindel <sjindel@google.com> Reviewed-by: Daco Harkes <dacoharkes@google.com> Reviewed-by: Martin Kustermann <kustermann@google.com>
38 lines
464 B
ArmAsm
38 lines
464 B
ArmAsm
.intel_syntax noprefix
|
|
.text
|
|
|
|
.globl _ClobberAndCall
|
|
_ClobberAndCall:
|
|
.globl ClobberAndCall
|
|
ClobberAndCall:
|
|
|
|
/* Load the target function. */
|
|
mov eax, [esp+0x4]
|
|
|
|
/* Code register. */
|
|
push edi
|
|
mov edi, 1
|
|
|
|
/* Thread register. */
|
|
push esi
|
|
mov esi, 1
|
|
|
|
/* Arguments descriptor register (volatile). */
|
|
mov edx, 1
|
|
|
|
/* Clobber all other volatile registers. */
|
|
mov ecx, 1
|
|
mov edx, 1
|
|
|
|
/* Align the frame to 16 bytes. */
|
|
sub esp, 4
|
|
|
|
call eax
|
|
|
|
add esp, 4
|
|
|
|
pop esi
|
|
pop edi
|
|
|
|
ret
|