// AUTO-GENERATED by autogen.sh; DO NOT EDIT

#include "runtime.h"
#include "arch.h"
#include "go-type.h"
intgo runtime_GOMAXPROCS(intgo n) __asm__ (GOSYM_PREFIX "runtime.GOMAXPROCS");
intgo runtime_GOMAXPROCS(intgo n)
{
  intgo ret;
#line 10 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	ret = runtime_gomaxprocsfunc(n);
return ret;
}
intgo runtime_NumCPU() __asm__ (GOSYM_PREFIX "runtime.NumCPU");
intgo runtime_NumCPU()
{
  intgo ret;
#line 14 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	ret = runtime_ncpu;
return ret;
}
int64 runtime_NumCgoCall() __asm__ (GOSYM_PREFIX "runtime.NumCgoCall");
int64 runtime_NumCgoCall()
{
  int64 ret;
#line 18 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	M *mp;

	ret = 0;
	for(mp=runtime_atomicloadp(&runtime_allm); mp; mp=mp->alllink)
		ret += mp->ncgocall;
return ret;
}
ParFor* runtime_newParFor(uint32 nthrmax) __asm__ (GOSYM_PREFIX "runtime.newParFor");
ParFor* runtime_newParFor(uint32 nthrmax)
{
  ParFor* desc;
#line 26 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	desc = runtime_parforalloc(nthrmax);
return desc;
}
void runtime_parForSetup(ParFor* desc, uint32 nthr, uint32 n, byte* ctx, bool wait, byte* body) __asm__ (GOSYM_PREFIX "runtime.parForSetup");
void runtime_parForSetup(ParFor* desc, uint32 nthr, uint32 n, byte* ctx, bool wait, byte* body)
{
#line 30 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	runtime_parforsetup(desc, nthr, n, ctx, wait, *(void(**)(ParFor*, uint32))body);
}
void runtime_parForDo(ParFor* desc) __asm__ (GOSYM_PREFIX "runtime.parForDo");
void runtime_parForDo(ParFor* desc)
{
#line 34 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	runtime_parfordo(desc);
}
struct runtime_parForIters_ret {
  uintptr start;
  uintptr end;
};
struct runtime_parForIters_ret runtime_parForIters(ParFor* desc, uintptr tid) __asm__ (GOSYM_PREFIX "runtime.parForIters");
struct runtime_parForIters_ret runtime_parForIters(ParFor* desc, uintptr tid)
{
  uintptr start;
  uintptr end;
#line 38 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	runtime_parforiters(desc, tid, &start, &end);
  {
    struct runtime_parForIters_ret __ret;
    __ret.start = start;
    __ret.end = end;
    return __ret;
  }
}
String runtime_typestring(Eface e) __asm__ (GOSYM_PREFIX "runtime.typestring");
String runtime_typestring(Eface e)
{
  String s;
#line 42 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	s = *e.__type_descriptor->__reflection;
return s;
}
bool runtime_golockedOSThread() __asm__ (GOSYM_PREFIX "runtime.golockedOSThread");
bool runtime_golockedOSThread()
{
  bool ret;
#line 46 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	ret = runtime_lockedOSThread();
return ret;
}
intgo runtime_NumGoroutine() __asm__ (GOSYM_PREFIX "runtime.NumGoroutine");
intgo runtime_NumGoroutine()
{
  intgo ret;
#line 50 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	ret = runtime_gcount();
return ret;
}
String runtime_getgoroot() __asm__ (GOSYM_PREFIX "runtime.getgoroot");
String runtime_getgoroot()
{
  String out;
#line 54 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	const byte *p;

	p = runtime_getenv("GOROOT");
	out = runtime_gostringnocopy(p);
return out;
}
int64 runtime_pprof_runtime_cyclesPerSecond() __asm__ (GOSYM_PREFIX "runtime_pprof.runtime_cyclesPerSecond");
int64 runtime_pprof_runtime_cyclesPerSecond()
{
  int64 res;
#line 61 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	res = runtime_tickspersecond();
return res;
}
intgo sync_runtime_procPin() __asm__ (GOSYM_PREFIX "sync.runtime_procPin");
intgo sync_runtime_procPin()
{
  intgo p;
#line 65 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	M *mp;

	mp = runtime_m();
	// Disable preemption.
	mp->locks++;
	p = mp->p->id;
return p;
}
void sync_runtime_procUnpin() __asm__ (GOSYM_PREFIX "sync.runtime_procUnpin");
void sync_runtime_procUnpin()
{
#line 74 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	runtime_m()->locks--;
}
intgo sync_atomic_runtime_procPin() __asm__ (GOSYM_PREFIX "sync_atomic.runtime_procPin");
intgo sync_atomic_runtime_procPin()
{
  intgo p;
#line 78 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	M *mp;

	mp = runtime_m();
	// Disable preemption.
	mp->locks++;
	p = mp->p->id;
return p;
}
void sync_atomic_runtime_procUnpin() __asm__ (GOSYM_PREFIX "sync_atomic.runtime_procUnpin");
void sync_atomic_runtime_procUnpin()
{
#line 87 "../../../gcc-5.1.0/libgo/runtime/runtime1.goc"

	runtime_m()->locks--;
}
