Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 5 of 5 for crosscall_ppc64 (0.24 sec)

  1. src/runtime/cgo/gcc_aix_ppc64.S

     * Linux assembly.
     */
      .toc
      .csect .text[PR]
      .globl crosscall_ppc64
      .globl .crosscall_ppc64
      .csect crosscall_ppc64[DS]
    crosscall_ppc64:
      .llong .crosscall_ppc64, TOC[tc0], 0
      .csect .text[PR]
    .crosscall_ppc64:
    	// Start with standard C stack frame layout and linkage
    	mflr	0
    	std	0, 16(1)	// Save LR in caller's frame
    	std	2, 40(1)	// Save TOC in caller's frame
    	bl	saveregs
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jan 24 22:38:02 UTC 2023
    - 2.7K bytes
    - Viewed (0)
  2. src/runtime/cgo/gcc_linux_ppc64x.S

    	FOR_EACH_VR \opcode "(\vr+1)"
    .endif
    .endm
    
    /*
     * void crosscall_ppc64(void (*fn)(void), void *g)
     *
     * Calling into the gc tool chain, where all registers are caller save.
     * Called from standard ppc64 C ABI, where r2, r14-r31, f14-f31 are
     * callee-save, so they must be saved explicitly.
     */
    .globl crosscall_ppc64
    crosscall_ppc64:
    	// Start with standard C stack frame layout and linkage
    	mflr	%r0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 04 18:03:04 UTC 2023
    - 2K bytes
    - Viewed (0)
  3. src/runtime/cgo/gcc_ppc64x.c

    		fatalf("pthread_create failed: %s", strerror(err));
    	}
    }
    
    extern void crosscall_ppc64(void (*fn)(void), void *g);
    
    static void*
    threadentry(void *v)
    {
    	ThreadStart ts;
    
    	ts = *(ThreadStart*)v;
    	_cgo_tsan_acquire();
    	free(v);
    	_cgo_tsan_release();
    
    	// Save g for this thread in C TLS
    	setg_gcc((void*)ts.g);
    
    	crosscall_ppc64(ts.fn, (void*)ts.g);
    	return nil;
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Aug 09 03:13:11 UTC 2023
    - 1.3K bytes
    - Viewed (0)
  4. src/runtime/cgo_ppc64x.go

    // Copyright 2015 The Go Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style
    // license that can be found in the LICENSE file.
    
    //go:build ppc64 || ppc64le
    
    package runtime
    
    // crosscall_ppc64 calls into the runtime to set up the registers the
    // Go runtime expects and so the symbol it calls needs to be exported
    // for external linking to work.
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 05 17:54:15 UTC 2022
    - 418 bytes
    - Viewed (0)
  5. src/runtime/asm_ppc64x.s

    	TW	$31, R0, R0
    	RET
    
    TEXT runtime·asminit(SB),NOSPLIT|NOFRAME,$0-0
    	RET
    
    // Any changes must be reflected to runtime/cgo/gcc_aix_ppc64.S:.crosscall_ppc64
    TEXT _cgo_reginit(SB),NOSPLIT|NOFRAME,$0-0
    	// crosscall_ppc64 and crosscall2 need to reginit, but can't
    	// get at the 'runtime.reginit' symbol.
    	BR	runtime·reginit(SB)
    
    TEXT runtime·reginit(SB),NOSPLIT|NOFRAME,$0-0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 18:17:17 UTC 2024
    - 45.4K bytes
    - Viewed (0)
Back to top