1 // SPDX-License-Identifier: GPL-2.0-only
2 // Copyright (C) 2015-2019 ARM Limited.
3 // Original author: Dave Martin <Dave.Martin@arm.com>
8 .macro __for from
:req
, to
:req
12 __for
\from
, %(\from
) + ((\to
) - (\from
)) / 2
13 __for
%(\from
) + ((\to
) - (\from
)) / 2 + 1, \to
17 .macro _for var
:req
, from
:req
, to
:req
, insn
:vararg
18 .macro _for__body
\var
:req
33 .type
\name
, @function
39 .macro define_accessor name
, num
, insn
40 .macro
\name\
()_entry n
46 adr x2
, .L__accessor_tbl\@
47 add x2
, x2
, x0
, lsl
#3
51 _for x
, 0, (\num
) - 1, \name\
()_entry \x
54 .purgem
\name\
()_entry
57 #endif /* ! ASSEMBLER_H */