cubefs

Форк
0
/x
/
asm_linux_s390x.s 
57 строк · 1.2 Кб
1
// Copyright 2016 The Go Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
4

5
//go:build linux && s390x && gc
6
// +build linux
7
// +build s390x
8
// +build gc
9

10
#include "textflag.h"
11

12
//
13
// System calls for s390x, Linux
14
//
15

16
// Just jump to package syscall's implementation for all these functions.
17
// The runtime may know about them.
18

19
TEXT ·Syscall(SB),NOSPLIT,$0-56
20
	BR	syscall·Syscall(SB)
21

22
TEXT ·Syscall6(SB),NOSPLIT,$0-80
23
	BR	syscall·Syscall6(SB)
24

25
TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
26
	BL	runtime·entersyscall(SB)
27
	MOVD	a1+8(FP), R2
28
	MOVD	a2+16(FP), R3
29
	MOVD	a3+24(FP), R4
30
	MOVD	$0, R5
31
	MOVD	$0, R6
32
	MOVD	$0, R7
33
	MOVD	trap+0(FP), R1	// syscall entry
34
	SYSCALL
35
	MOVD	R2, r1+32(FP)
36
	MOVD	R3, r2+40(FP)
37
	BL	runtime·exitsyscall(SB)
38
	RET
39

40
TEXT ·RawSyscall(SB),NOSPLIT,$0-56
41
	BR	syscall·RawSyscall(SB)
42

43
TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
44
	BR	syscall·RawSyscall6(SB)
45

46
TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
47
	MOVD	a1+8(FP), R2
48
	MOVD	a2+16(FP), R3
49
	MOVD	a3+24(FP), R4
50
	MOVD	$0, R5
51
	MOVD	$0, R6
52
	MOVD	$0, R7
53
	MOVD	trap+0(FP), R1	// syscall entry
54
	SYSCALL
55
	MOVD	R2, r1+32(FP)
56
	MOVD	R3, r2+40(FP)
57
	RET
58

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.