Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 18 for libcall_n (0.15 sec)

  1. src/runtime/sys_solaris_amd64.s

    	get_tls(BX)
    	MOVQ	g(BX), BP
    	MOVQ	g_m(BP), BP
    	// restore libcall
    	LEAQ	m_libcall(BP), R11
    	MOVQ	72(SP), R10
    	MOVQ	R10, libcall_fn(R11)
    	MOVQ	80(SP), R10
    	MOVQ	R10, libcall_args(R11)
    	MOVQ	88(SP), R10
    	MOVQ	R10, libcall_n(R11)
    	MOVQ    152(SP), R10
    	MOVQ    R10, libcall_r1(R11)
    	MOVQ    160(SP), R10
    	MOVQ    R10, libcall_r2(R11)
    
    	// restore scratch
    	LEAQ	(m_mOS+mOS_scratch)(BP), R11
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 21 19:29:00 UTC 2023
    - 6.4K bytes
    - Viewed (0)
  2. src/runtime/sys_aix_ppc64.s

    	BEQ	sigtramp	// g.m == nil
    
    	// Save m->libcall. We need to do this because we
    	// might get interrupted by a signal in runtime·asmcgocall.
    	MOVD	(m_libcall+libcall_fn)(R6), R7
    	MOVD	R7, 96(R1)
    	MOVD	(m_libcall+libcall_args)(R6), R7
    	MOVD	R7, 104(R1)
    	MOVD	(m_libcall+libcall_n)(R6), R7
    	MOVD	R7, 112(R1)
    	MOVD	(m_libcall+libcall_r1)(R6), R7
    	MOVD	R7, 120(R1)
    	MOVD	(m_libcall+libcall_r2)(R6), R7
    	MOVD	R7, 128(R1)
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 21 19:29:00 UTC 2023
    - 7.4K bytes
    - Viewed (0)
  3. 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)
  4. 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)
  5. 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)
  6. src/runtime/os_solaris.go

    		mp = gp.m
    	}
    	if mp != nil && 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 {
    		mp = nil
    	}
    
    	var libcall libcall
    	libcall.fn = uintptr(unsafe.Pointer(fn))
    	libcall.n = 2
    	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 06 18:49:01 UTC 2023
    - 6.6K bytes
    - Viewed (0)
  7. 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)
  8. src/runtime/sys_libc.go

    	gp := getg()
    	var mp *m
    	if gp != nil {
    		mp = gp.m
    	}
    	if mp != nil && 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 {
    		// Make sure we don't reset libcallsp. This makes
    		// libcCall reentrant; We remember the g/pc/sp for the
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 05 17:54:15 UTC 2022
    - 1.8K bytes
    - Viewed (0)
  9. 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)
  10. 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)
Back to top