Commit 0e1bcfc6 authored by Tobias Klauser's avatar Tobias Klauser Committed by Tobias Klauser

runtime: add symbol for AT_FDCWD on Linux amd64 and mips64x

Also order the syscall number list by numerically for mips64x.

Follow-up for CL 92895.

Change-Id: I5f01f8c626132a06160997fce8a2aef0c486bb1c
Reviewed-on: https://go-review.googlesource.com/93616
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: default avatarAustin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
parent 32a0a1d3
...@@ -10,6 +10,8 @@ ...@@ -10,6 +10,8 @@
#include "go_tls.h" #include "go_tls.h"
#include "textflag.h" #include "textflag.h"
#define AT_FDCWD -100
#define SYS_read 0 #define SYS_read 0
#define SYS_write 1 #define SYS_write 1
#define SYS_close 3 #define SYS_close 3
...@@ -66,7 +68,7 @@ TEXT runtime·exitThread(SB),NOSPLIT,$0-8 ...@@ -66,7 +68,7 @@ TEXT runtime·exitThread(SB),NOSPLIT,$0-8
TEXT runtime·open(SB),NOSPLIT,$0-20 TEXT runtime·open(SB),NOSPLIT,$0-20
// This uses openat instead of open, because Android O blocks open. // This uses openat instead of open, because Android O blocks open.
MOVL $-100, DI // AT_FDCWD, so this acts like open MOVL $AT_FDCWD, DI // AT_FDCWD, so this acts like open
MOVQ name+0(FP), SI MOVQ name+0(FP), SI
MOVL mode+8(FP), DX MOVL mode+8(FP), DX
MOVL perm+12(FP), R10 MOVL perm+12(FP), R10
......
...@@ -13,10 +13,11 @@ ...@@ -13,10 +13,11 @@
#include "go_tls.h" #include "go_tls.h"
#include "textflag.h" #include "textflag.h"
#define AT_FDCWD -100
#define SYS_exit 5058 #define SYS_exit 5058
#define SYS_read 5000 #define SYS_read 5000
#define SYS_write 5001 #define SYS_write 5001
#define SYS_openat 5247
#define SYS_close 5003 #define SYS_close 5003
#define SYS_getpid 5038 #define SYS_getpid 5038
#define SYS_kill 5060 #define SYS_kill 5060
...@@ -42,6 +43,7 @@ ...@@ -42,6 +43,7 @@
#define SYS_exit_group 5205 #define SYS_exit_group 5205
#define SYS_epoll_create 5207 #define SYS_epoll_create 5207
#define SYS_epoll_ctl 5208 #define SYS_epoll_ctl 5208
#define SYS_openat 5247
#define SYS_epoll_pwait 5272 #define SYS_epoll_pwait 5272
#define SYS_clock_gettime 5222 #define SYS_clock_gettime 5222
#define SYS_epoll_create1 5285 #define SYS_epoll_create1 5285
...@@ -68,7 +70,7 @@ TEXT runtime·exitThread(SB),NOSPLIT|NOFRAME,$0-8 ...@@ -68,7 +70,7 @@ TEXT runtime·exitThread(SB),NOSPLIT|NOFRAME,$0-8
TEXT runtime·open(SB),NOSPLIT|NOFRAME,$0-20 TEXT runtime·open(SB),NOSPLIT|NOFRAME,$0-20
// This uses openat instead of open, because Android O blocks open. // This uses openat instead of open, because Android O blocks open.
MOVW $-100, R4 // AT_FDCWD, so this acts like open MOVW $AT_FDCWD, R4 // AT_FDCWD, so this acts like open
MOVV name+0(FP), R5 MOVV name+0(FP), R5
MOVW mode+8(FP), R6 MOVW mode+8(FP), R6
MOVW perm+12(FP), R7 MOVW perm+12(FP), R7
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment