internal/cpu: add aarch64 support functions
Patch from Andreas Schwab. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/281000
This commit is contained in:
parent
0b9ef8be40
commit
5a4e0d121a
|
@ -1,4 +1,4 @@
|
|||
fa161cb71880cf80ef53fb4bf35dba8ee01af648
|
||||
2b5bdd22b7ec2fc13ae0f644c781f64c1a209500
|
||||
|
||||
The first line of this file holds the git revision number of the last
|
||||
merge done from the gofrontend repository.
|
||||
|
|
|
@ -200,3 +200,29 @@ struct queryResult kdsaQuery() {
|
|||
}
|
||||
|
||||
#endif /* defined(__s390x__) */
|
||||
|
||||
#ifdef __aarch64__
|
||||
|
||||
uint64_t getisar0(void)
|
||||
__asm__(GOSYM_PREFIX "internal_1cpu.getisar0")
|
||||
__attribute__((no_split_stack));
|
||||
|
||||
uint64_t getisar0() {
|
||||
uint64_t isar0;
|
||||
|
||||
__asm__("mrs %0,id_aa64isar0_el1" : "=r"(isar0));
|
||||
return isar0;
|
||||
}
|
||||
|
||||
uint64_t getMIDR(void)
|
||||
__asm__(GOSYM_PREFIX "internal_1cpu.getMIDR")
|
||||
__attribute__((no_split_stack));
|
||||
|
||||
uint64_t getMIDR() {
|
||||
uint64_t MIDR;
|
||||
|
||||
__asm__("mrs %0,midr_el1" : "=r"(MIDR));
|
||||
return MIDR;
|
||||
}
|
||||
|
||||
#endif /* defined(__aarch64__) */
|
||||
|
|
Loading…
Reference in New Issue