Page MenuHomeFreeBSD

D40540.diff
No OneTemporary

D40540.diff

diff --git a/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S b/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
--- a/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
+++ b/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
@@ -72,7 +72,7 @@
dtrace_fuword8_nocheck(void *addr)
*/
ENTRY(dtrace_fuword8_nocheck)
- ldrb w0, [x0]
+ ldtrb w0, [x0]
RET
END(dtrace_fuword8_nocheck)
@@ -81,7 +81,7 @@
dtrace_fuword16_nocheck(void *addr)
*/
ENTRY(dtrace_fuword16_nocheck)
- ldrh w0, [x0]
+ ldtrh w0, [x0]
RET
END(dtrace_fuword16_nocheck)
@@ -90,7 +90,7 @@
dtrace_fuword32_nocheck(void *addr)
*/
ENTRY(dtrace_fuword32_nocheck)
- ldr w0, [x0]
+ ldtr w0, [x0]
RET
END(dtrace_fuword32_nocheck)
@@ -99,7 +99,7 @@
dtrace_fuword64_nocheck(void *addr)
*/
ENTRY(dtrace_fuword64_nocheck)
- ldr x0, [x0]
+ ldtr x0, [x0]
RET
END(dtrace_fuword64_nocheck)
@@ -110,7 +110,8 @@
ENTRY(dtrace_copy)
cbz x2, 2f /* If len == 0 then skip loop */
1:
- ldrb w4, [x0], #1 /* Load from uaddr */
+ ldtrb w4, [x0] /* Load from uaddr */
+ add x0, x0, #1
strb w4, [x1], #1 /* Store in kaddr */
sub x2, x2, #1 /* len-- */
cbnz x2, 1b
@@ -126,8 +127,9 @@
*/
ENTRY(dtrace_copystr)
cbz x2, 2f /* If len == 0 then skip loop */
-
-1: ldrb w4, [x0], #1 /* Load from uaddr */
+1:
+ ldtrb w4, [x0] /* Load from uaddr */
+ add x0, x0, #1
strb w4, [x1], #1 /* Store in kaddr */
cbz w4, 2f /* If == 0 then break */
sub x2, x2, #1 /* len-- */

File Metadata

Mime Type
text/plain
Expires
Wed, Mar 12, 2:25 PM (7 h, 31 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17121042
Default Alt Text
D40540.diff (1 KB)

Event Timeline