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>
45 lines
703 B
ArmAsm
45 lines
703 B
ArmAsm
.text
|
|
|
|
.global ClobberAndCall
|
|
ClobberAndCall:
|
|
|
|
/* Save link register register and thread register. Keep stack aligned to 16 bytes. */
|
|
stp lr, x26, [sp, #-16]!
|
|
mov lr, #1
|
|
mov x26, #1
|
|
|
|
/* Arguments descriptor register isn't callee-saved. */
|
|
mov x4, #1
|
|
|
|
/* Dart stack pointer, also volatile. */
|
|
mov x15, #1
|
|
|
|
/* Pool pointer register and code register. Keep stack aligned to 16 bytes. */
|
|
stp x24, x27, [sp, #-16]!
|
|
|
|
mov x24, #1
|
|
mov x27, #1
|
|
|
|
/* Clobber all other volatile registers. */
|
|
mov x1, #1
|
|
mov x2, #1
|
|
mov x3, #1
|
|
mov x4, #1
|
|
mov x5, #1
|
|
mov x6, #1
|
|
mov x7, #1
|
|
mov x8, #1
|
|
mov x9, #1
|
|
mov x10, #1
|
|
mov x11, #1
|
|
mov x12, #1
|
|
mov x13, #1
|
|
mov x14, #1
|
|
|
|
blr x0
|
|
|
|
ldp x24, x27, [sp], #16
|
|
ldp lr, x26, [sp], #16
|
|
|
|
blr lr
|