Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 15 for m_libcall (0.33 sec)

  1. 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)
  2. src/runtime/sys_solaris_amd64.s

    	MOVQ	DI, 0(SP)
    	MOVQ	AX, 8(SP)
    	MOVQ	$runtime·badsignal(SB), AX
    	CALL	AX
    	JMP	exit
    
    allgood:
    	// Save m->libcall and m->scratch. We need to do this because we
    	// might get interrupted by a signal in runtime·asmcgocall.
    
    	// save m->libcall
    	MOVQ	g_m(R10), BP
    	LEAQ	m_libcall(BP), R11
    	MOVQ	libcall_fn(R11), R10
    	MOVQ	R10, 72(SP)
    	MOVQ	libcall_args(R11), R10
    	MOVQ	R10, 80(SP)
    	MOVQ	libcall_n(R11), R10
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 21 19:29:00 UTC 2023
    - 6.4K bytes
    - Viewed (0)
  3. src/runtime/os_solaris.go

    	} else {
    		mp = nil
    	}
    
    	var libcall libcall
    	libcall.fn = uintptr(unsafe.Pointer(fn))
    	libcall.n = 1
    	// TODO(rsc): Why is noescape necessary here and below?
    	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
    	asmcgocall(unsafe.Pointer(&asmsysvicall6x), unsafe.Pointer(&libcall))
    	if mp != nil {
    		mp.libcallsp = 0
    	}
    	return libcall.r1, libcall.err
    }
    
    //go:nosplit
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 06 18:49:01 UTC 2023
    - 6.6K bytes
    - Viewed (0)
  4. 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)
  5. src/runtime/syscall_solaris.go

    func syscall_chdir(path uintptr) (err uintptr) {
    	call := libcall{
    		fn:   uintptr(unsafe.Pointer(&libc_chdir)),
    		n:    1,
    		args: uintptr(unsafe.Pointer(&path)),
    	}
    	asmcgocall(unsafe.Pointer(&asmsysvicall6x), unsafe.Pointer(&call))
    	return call.err
    }
    
    //go:nosplit
    //go:linkname syscall_chroot
    func syscall_chroot(path uintptr) (err uintptr) {
    	call := libcall{
    		fn:   uintptr(unsafe.Pointer(&libc_chroot)),
    		n:    1,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 06 18:49:01 UTC 2023
    - 8.4K bytes
    - Viewed (0)
  6. src/runtime/os_windows.go

    //
    //go:nosplit
    func stdcall_no_g(fn stdFunction, n int, args uintptr) uintptr {
    	libcall := libcall{
    		fn:   uintptr(unsafe.Pointer(fn)),
    		n:    uintptr(n),
    		args: args,
    	}
    	asmstdcall_trampoline(noescape(unsafe.Pointer(&libcall)))
    	return libcall.r1
    }
    
    // Calling stdcall on os stack.
    // May run during STW, so write barriers are not allowed.
    //
    //go:nowritebarrier
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 26 22:55:25 UTC 2024
    - 41.5K 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/sys_windows_arm64.s

    _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)
    
    	// Restore callee-saved registers.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Sep 21 15:56:43 UTC 2023
    - 6.8K bytes
    - Viewed (0)
  9. src/runtime/sys_libc.go

    		// don't want that call's completion to zero
    		// libcallsp.
    		// We don't need to set libcall* while we're in a sighandler
    		// (even if we're not currently in libc) because we block all
    		// signals while we're handling a signal. That includes the
    		// profile signal, which is the one that uses the libcall* info.
    		mp = nil
    	}
    	res := asmcgocall(fn, arg)
    	if mp != nil {
    		mp.libcallsp = 0
    	}
    	return res
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 05 17:54:15 UTC 2022
    - 1.8K bytes
    - Viewed (0)
  10. src/runtime/os2_aix.go

    // asmsyscall6 calls the libc symbol using a C convention.
    // It's defined in sys_aix_ppc64.go.
    var asmsyscall6 libFunc
    
    // syscallX functions must always be called with g != nil and m != nil,
    // as it relies on g.m.libcall to pass arguments to asmcgocall.
    // The few cases where syscalls haven't a g or a m must call their equivalent
    // function in sys_aix_ppc64.s to handle them.
    
    //go:nowritebarrier
    //go:nosplit
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Dec 14 17:22:18 UTC 2023
    - 20.9K bytes
    - Viewed (0)
Back to top