[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gas/26339] [aarch64] unknown architectural extensions
From: |
david.spickett at linaro dot org |
Subject: |
[Bug gas/26339] [aarch64] unknown architectural extensions |
Date: |
Mon, 10 Aug 2020 11:25:59 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=26339
--- Comment #6 from David Spickett <david.spickett at linaro dot org> ---
> Is the tlbi instruction what was added in ARMv8.4 (tlb-rmi), or only certain
> operands?
(I'm reading this from the ARMARM for v8, "C6.2.328 TLBI")
tlbi is a sys instruction alias which I think means that it's always been
available in some form. Clang takes this approach, so just armv8.0-a will give
you access to tlbi itself.
v8.4-a added more operands (some of which take registers) to the list. These
are the "outer shareable" and "range maintanence". (added to llvm in
35bd8f5d1e31c7f57ddd56b12fba302f54274548, note that since then a "tlb-rmi" sub
feature was added)
So if you look at the instruction description, <tlbi_op> will tell you which
operands were added for FEAT_TLBIOS and FEAT_TLBIRANGE which are enabled for
v8.4-a.
Clang example:
$ cat /tmp/test.s
tlbi vmalle1os
$ ./clang -target aarch64-arm-none-eabi -march=armv8.3-a -c /tmp/test.s -o
/dev/null
/tmp/test.s:1:6: error: TLBI VMALLE1OS requires tlb-rmi
tlbi vmalle1os
^
$ ./clang -target aarch64-arm-none-eabi -march=armv8.4-a -c /tmp/test.s -o
/dev/null
This will also do the same thing from the assembler if you want to avoid the
clang only tlb-rmi name:
.arch armv8.4-a
tlbi vmalle1os
(if that helps at all)
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug gas/26339] New: [aarch64] unknown architectural extensions, ndesaulniers at google dot com, 2020/08/05
- [Bug gas/26339] [aarch64] unknown architectural extensions, nsz at gcc dot gnu.org, 2020/08/06
- [Bug gas/26339] [aarch64] unknown architectural extensions, ktkachov at sourceware dot org, 2020/08/06
- [Bug gas/26339] [aarch64] unknown architectural extensions, ktkachov at sourceware dot org, 2020/08/06
- [Bug gas/26339] [aarch64] unknown architectural extensions, ndesaulniers at google dot com, 2020/08/06
- [Bug gas/26339] [aarch64] unknown architectural extensions, ndesaulniers at google dot com, 2020/08/06
- [Bug gas/26339] [aarch64] unknown architectural extensions, david.spickett at linaro dot org, 2020/08/07
- [Bug gas/26339] [aarch64] unknown architectural extensions, ndesaulniers at google dot com, 2020/08/07
- [Bug gas/26339] [aarch64] unknown architectural extensions,
david.spickett at linaro dot org <=
- [Bug gas/26339] [aarch64] unknown architectural extensions, ndesaulniers at google dot com, 2020/08/10