summaryrefslogtreecommitdiff
path: root/sys/src/9
diff options
context:
space:
mode:
authoraiju <devnull@localhost>2017-06-12 17:09:11 +0000
committeraiju <devnull@localhost>2017-06-12 17:09:11 +0000
commit1cfa405d0a272cbd7df22d4b9767eb57e21cc21f (patch)
treeefa9673435c4425f9d290186d7782dd35ec28ee4 /sys/src/9
parent48c5da7a64804bf649ff815c778064dfe8c59711 (diff)
pc64: set error code and trap fields in Ureg* on syscalls
Diffstat (limited to 'sys/src/9')
-rw-r--r--sys/src/9/pc64/l.s4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/src/9/pc64/l.s b/sys/src/9/pc64/l.s
index 669ee2167..cb3cb343e 100644
--- a/sys/src/9/pc64/l.s
+++ b/sys/src/9/pc64/l.s
@@ -722,8 +722,10 @@ TEXT syscallentry(SB), 1, $-4
PUSHQ R11 /* old flags */
PUSHQ $UESEL /* old code segment */
PUSHQ CX /* old ip */
+ PUSHQ $0 /* error code */
+ PUSHQ $64 /* trap number (VectorSYSCALL) */
- SUBQ $(8 + 23*8-5*8), SP /* arg + sizeof(Ureg)-pushed */
+ SUBQ $(8 + 23*8-7*8), SP /* arg + sizeof(Ureg)-pushed */
MOVQ RMACH, (15*8)(SP) /* old r15 */
MOVQ RUSER, (14*8)(SP) /* old r14 */