xref: /kernel/linux/linux-6.6/tools/testing/selftests/arm64/bti/trampoline.S
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /kernel/linux/linux-6.6/tools/testing/selftests/arm64/bti/
162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2019  Arm Limited
462306a36Sopenharmony_ci * Original author: Dave Martin <Dave.Martin@arm.com>
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include "assembler.h"
862306a36Sopenharmony_ci
962306a36Sopenharmony_cistartfn call_using_br_x0
1062306a36Sopenharmony_ci	bti	c
1162306a36Sopenharmony_ci	br	x0
1262306a36Sopenharmony_ciendfn
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_cistartfn call_using_br_x16
1562306a36Sopenharmony_ci	bti	c
1662306a36Sopenharmony_ci	mov	x16, x0
1762306a36Sopenharmony_ci	br	x16
1862306a36Sopenharmony_ciendfn
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_cistartfn call_using_blr
2162306a36Sopenharmony_ci	paciasp
2262306a36Sopenharmony_ci	stp	x29, x30, [sp, #-16]!
2362306a36Sopenharmony_ci	blr	x0
2462306a36Sopenharmony_ci	ldp	x29, x30, [sp], #16
2562306a36Sopenharmony_ci	autiasp
2662306a36Sopenharmony_ci	ret
2762306a36Sopenharmony_ciendfn
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ciemit_aarch64_feature_1_and
30

Indexes created Thu Nov 07 10:32:03 CST 2024