1/* SPDX-License-Identifier: BSD-2-Clause */ 2/* 3 * Copyright (c) 2020, Huawei Technologies Co. Ltd. 4 */ 5 6#include <asm.S> 7 8/* 9 * long tlsdesc_resolve(struct tlsdesc *); 10 * 11 * Must preserve all registers except x0, x1 and the processor flags. 12 * See https://www.fsfla.org/~lxoliva/writeups/TLS/RFC-TLSDESC-ARM.txt section 13 * "Resolvers' Calling Convention". The document applies to 32-bit Arm but other 14 * sources mention similar constraints for other architectures. 15 */ 16FUNC tlsdesc_resolve , : 17 ldr x0, [x0, #8] 18 ret 19END_FUNC tlsdesc_resolve 20 21BTI(emit_aarch64_feature_1_and GNU_PROPERTY_AARCH64_FEATURE_1_BTI) 22