Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 13 for libcall_n (0.17 sec)

  1. src/runtime/sys_windows_386.s

    	CLD
    	REP; MOVSL
    
    docall:
    	// Call stdcall or cdecl function.
    	// DI SI BP BX are preserved, SP is not
    	CALL	libcall_fn(BX)
    	MOVL	BP, SP
    
    	// Return result.
    	MOVL	fn+0(FP), BX
    	MOVL	AX, libcall_r1(BX)
    	MOVL	DX, libcall_r2(BX)
    
    	// GetLastError().
    	MOVL	0x34(FS), AX
    	MOVL	AX, libcall_err(BX)
    
    	RET
    
    // faster get/set last error
    TEXT runtimeĀ·getlasterror(SB),NOSPLIT,$0
    	MOVL	0x34(FS), AX
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Sep 21 15:56:43 UTC 2023
    - 6.5K bytes
    - Viewed (0)
  2. src/runtime/sys_windows_arm64.s

    _3args:
    	MOVD	(2*8)(R12), R2
    _2args:
    	MOVD	(1*8)(R12), R1
    _1args:
    	MOVD	(0*8)(R12), R0
    _0args:
    
    	MOVD	libcall_fn(R19), R12	// branch to libcall->fn
    	BL	(R12)
    
    	MOVD	R20, RSP			// free stack space
    	MOVD	R0, libcall_r1(R19)		// save return value to libcall->r1
    	// TODO(rsc) floating point like amd64 in libcall->r2?
    
    	// GetLastError
    	MOVD	TEB_error(R18_PLATFORM), R0
    	MOVD	R0, libcall_err(R19)
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Sep 21 15:56:43 UTC 2023
    - 6.8K bytes
    - Viewed (0)
  3. src/runtime/sys_windows_amd64.s

    TEXT runtimeĀ·asmstdcall(SB),NOSPLIT,$16
    	MOVQ	SP, AX
    	ANDQ	$~15, SP	// alignment as per Windows requirement
    	MOVQ	AX, 8(SP)
    	MOVQ	CX, 0(SP)	// asmcgocall will put first argument into CX.
    
    	MOVQ	libcall_fn(CX), AX
    	MOVQ	libcall_args(CX), SI
    	MOVQ	libcall_n(CX), CX
    
    	// SetLastError(0).
    	MOVQ	0x30(GS), DI
    	MOVL	$0, 0x68(DI)
    
    	SUBQ	$(const_maxArgs*8), SP	// room for args
    
    	// Fast version, do not store args on the stack.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Feb 19 07:24:08 UTC 2024
    - 8.4K bytes
    - Viewed (0)
  4. src/runtime/os2_aix.go

    	mp := gp.m
    	resetLibcall := true
    	if mp.libcallsp == 0 {
    		mp.libcallg.set(gp)
    		mp.libcallpc = getcallerpc()
    		// sp must be the last, because once async cpu profiler finds
    		// all three values to be non-zero, it will use them
    		mp.libcallsp = getcallersp()
    	} else {
    		resetLibcall = false // See comment in sys_darwin.go:libcCall
    	}
    
    	c := libcall{
    		fn:   uintptr(unsafe.Pointer(fn)),
    		n:    2,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Dec 14 17:22:18 UTC 2023
    - 20.9K bytes
    - Viewed (0)
  5. src/runtime/os_windows.go

    	if resetLibcall {
    		mp.libcallsp = 0
    	}
    	return mp.libcall.r1
    }
    
    //go:nosplit
    func stdcall0(fn stdFunction) uintptr {
    	mp := getg().m
    	mp.libcall.n = 0
    	mp.libcall.args = 0
    	return stdcall(fn)
    }
    
    //go:nosplit
    //go:cgo_unsafe_args
    func stdcall1(fn stdFunction, a0 uintptr) uintptr {
    	mp := getg().m
    	mp.libcall.n = 1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 26 22:55:25 UTC 2024
    - 41.5K bytes
    - Viewed (0)
  6. src/runtime/os3_solaris.go

    //go:nosplit
    //go:cgo_unsafe_args
    func doMmap(addr, n, prot, flags, fd, off uintptr) (uintptr, uintptr) {
    	var libcall libcall
    	libcall.fn = uintptr(unsafe.Pointer(&libc_mmap))
    	libcall.n = 6
    	libcall.args = uintptr(noescape(unsafe.Pointer(&addr)))
    	asmcgocall(unsafe.Pointer(&asmsysvicall6x), unsafe.Pointer(&libcall))
    	return libcall.r1, libcall.err
    }
    
    //go:nosplit
    func munmap(addr unsafe.Pointer, n uintptr) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 17.6K bytes
    - Viewed (0)
  7. src/runtime/sys_windows_arm.s

    	MOVM.DB.W [R4, R5, R14], (R13)	// push {r4, r5, lr}
    	MOVW	R0, R4			// put libcall * in r4
    	MOVW	R13, R5			// save stack pointer in r5
    
    	// SetLastError(0)
    	MOVW	$0, R0
    	MRC	15, 0, R1, C13, C0, 2
    	MOVW	R0, 0x34(R1)
    
    	MOVW	8(R4), R12	// libcall->args
    
    	// Do we have more than 4 arguments?
    	MOVW	4(R4), R0	// libcall->n
    	SUB.S	$4, R0, R2
    	BLE	loadregs
    
    	// Reserve stack space for remaining args
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Sep 21 15:56:43 UTC 2023
    - 7.7K bytes
    - Viewed (0)
  8. src/runtime/runtime2.go

    	freelink    *m // on sched.freem
    	trace       mTraceState
    
    	// these are here because they are too large to be on the stack
    	// of low-level NOSPLIT functions.
    	libcall    libcall
    	libcallpc  uintptr // for cpu profiler
    	libcallsp  uintptr
    	libcallg   guintptr
    	winsyscall winlibcall // stores syscall parameters on windows
    
    	vdsoSP uintptr // SP for traceback while in VDSO call (0 if not in call)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:57:37 UTC 2024
    - 47.9K bytes
    - Viewed (0)
  9. src/runtime/syscall_aix.go

    //
    //go:nosplit
    //go:cgo_unsafe_args
    //go:linkname syscall_syscall6
    func syscall_syscall6(fn, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2, err uintptr) {
    	c := libcall{
    		fn:   fn,
    		n:    nargs,
    		args: uintptr(unsafe.Pointer(&a1)),
    	}
    
    	entersyscallblock()
    	asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
    	exitsyscall()
    	return c.r1, 0, c.err
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Dec 14 17:22:18 UTC 2023
    - 6.3K bytes
    - Viewed (0)
  10. src/runtime/traceback.go

    // rewind it into the CALL instruction.)
    // If gp.m.libcall{g,pc,sp} information is available, it uses that information in preference to
    // the pc/sp/lr passed in.
    func tracebacktrap(pc, sp, lr uintptr, gp *g) {
    	if gp.m.libcallsp != 0 {
    		// We're in C code somewhere, traceback from the saved position.
    		traceback1(gp.m.libcallpc, gp.m.libcallsp, 0, gp.m.libcallg.ptr(), 0)
    		return
    	}
    	traceback1(pc, sp, lr, gp, unwindTrap)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 16:25:21 UTC 2024
    - 55.1K bytes
    - Viewed (0)
Back to top