Commit 4019d0e4 authored by Shenghou Ma's avatar Shenghou Ma

runtime: avoid defining the same variable in more than one translation unit

For gccgo runtime and Darwin where -fno-common is the default.

R=iant, dave
CC=golang-dev
https://golang.org/cl/7094061
parent 5a49acc7
......@@ -19,6 +19,8 @@ package runtime
#pragma dataflag 16 /* mark mheap as 'no pointers', hiding from garbage collector */
MHeap runtime·mheap;
int32 runtime·checking;
extern MStats mstats; // defined in zruntime_def_$GOOS_$GOARCH.go
extern volatile intgo runtime·MemProfileRate;
......
......@@ -446,7 +446,7 @@ void runtime·markallocated(void *v, uintptr n, bool noptr);
void runtime·checkallocated(void *v, uintptr n);
void runtime·markfreed(void *v, uintptr n);
void runtime·checkfreed(void *v, uintptr n);
int32 runtime·checking;
extern int32 runtime·checking;
void runtime·markspan(void *v, uintptr size, uintptr n, bool leftover);
void runtime·unmarkspan(void *v, uintptr size);
bool runtime·blockspecial(void*);
......
......@@ -24,6 +24,13 @@ static int32 debug = 0;
int32 runtime·gcwaiting;
G* runtime·allg;
G* runtime·lastg;
M* runtime·allm;
int8* runtime·goos;
int32 runtime·ncpu;
// Go scheduler
//
// The go scheduler's job is to match ready-to-run goroutines (`g's)
......
......@@ -562,15 +562,15 @@ struct Panic
*/
extern String runtime·emptystring;
extern uintptr runtime·zerobase;
G* runtime·allg;
G* runtime·lastg;
M* runtime·allm;
extern G* runtime·allg;
extern G* runtime·lastg;
extern M* runtime·allm;
extern int32 runtime·gomaxprocs;
extern bool runtime·singleproc;
extern uint32 runtime·panicking;
extern int32 runtime·gcwaiting; // gc is waiting to run
int8* runtime·goos;
int32 runtime·ncpu;
extern int8* runtime·goos;
extern int32 runtime·ncpu;
extern bool runtime·iscgo;
extern void (*runtime·sysargs)(int32, uint8**);
extern uint32 runtime·maxstring;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment