Changeset View
Changeset View
Standalone View
Standalone View
head/sys/sparc64/sparc64/support.S
Show First 20 Lines • Show All 397 Lines • ▼ Show 20 Lines | */ | ||||
.globl fubyte, fusword, fuword, subyte, susword, suword | .globl fubyte, fusword, fuword, subyte, susword, suword | ||||
.set fubyte, fuword8 | .set fubyte, fuword8 | ||||
.set fusword, fuword16 | .set fusword, fuword16 | ||||
.set fuword, fuword64 | .set fuword, fuword64 | ||||
.set subyte, suword8 | .set subyte, suword8 | ||||
.set susword, suword16 | .set susword, suword16 | ||||
.set suword, suword64 | .set suword, suword64 | ||||
.globl casuword32, casuword, fuptr, suptr | .globl casuword32_int, casuword64_int, fuptr, suptr | ||||
.set casuword, casuword64 | |||||
.set fuptr, fuword64 | .set fuptr, fuword64 | ||||
.set suptr, suword64 | .set suptr, suword64 | ||||
/* | /* | ||||
* int32_t casuword32(volatile int32_t *p, int32_t e, int32_t s) | * int32_t casuword32(volatile int32_t *p, int32_t e, int32_t s) | ||||
*/ | */ | ||||
ENTRY(casuword32) | ENTRY(casuword32_int) | ||||
casa [%o0] ASI_AIUP, %o1, %o2 | casa [%o0] ASI_AIUP, %o1, %o2 | ||||
retl | retl | ||||
mov %o2, %o0 | mov %o2, %o0 | ||||
END(casuword32) | END(casuword32_int) | ||||
/* | /* | ||||
* int64_t casuword64(volatile int64_t *p, int64_t e, int64_t s) | * int64_t casuword64(volatile int64_t *p, int64_t e, int64_t s) | ||||
*/ | */ | ||||
ENTRY(casuword64) | ENTRY(casuword64_int) | ||||
casxa [%o0] ASI_AIUP, %o1, %o2 | casxa [%o0] ASI_AIUP, %o1, %o2 | ||||
retl | retl | ||||
mov %o2, %o0 | mov %o2, %o0 | ||||
END(casuword64) | END(casuword64_int) | ||||
/* | /* | ||||
* int fuword8(const void *base) | * int fuword8(const void *base) | ||||
*/ | */ | ||||
ENTRY(fuword8) | ENTRY(fuword8) | ||||
retl | retl | ||||
lduba [%o0] ASI_AIUP, %o0 | lduba [%o0] ASI_AIUP, %o0 | ||||
END(fuword8) | END(fuword8) | ||||
▲ Show 20 Lines • Show All 509 Lines • Show Last 20 Lines |