libgo: Add back tests of syscall time.
authorIan Lance Taylor <ian@gcc.gnu.org>
Wed, 7 Dec 2011 01:55:49 +0000 (01:55 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Wed, 7 Dec 2011 01:55:49 +0000 (01:55 +0000)
From-SVN: r182075

libgo/go/runtime/export_test.go
libgo/go/runtime/proc_test.go
libgo/runtime/proc.c

index eb7a4454742e55e36c08340dd11291a816be71af..c603e1b0d7981057b3468b465d7df446e771b426 100644 (file)
@@ -18,11 +18,8 @@ var F64toint = f64toint
 
 func entersyscall()
 func exitsyscall()
-func LockedOSThread() bool
-
-/* Useless for gccgo.
+func golockedOSThread() bool
 
 var Entersyscall = entersyscall
 var Exitsyscall = exitsyscall
-
-*/
+var LockedOSThread = golockedOSThread
index 1d20a58a420be06a59fe92ddb9f40ad50ae6f515..32111080a5465b8f0eeb6999af5b0a4c7b5e6eda 100644 (file)
@@ -74,8 +74,6 @@ func BenchmarkStackGrowth(b *testing.B) {
        }
 }
 
-/* These benchmarks are meaningless for gccgo.
-
 func BenchmarkSyscall(b *testing.B) {
        const CallsPerSched = 1000
        procs := runtime.GOMAXPROCS(-1)
@@ -125,5 +123,3 @@ func BenchmarkSyscallWork(b *testing.B) {
                <-c
        }
 }
-
-*/
index e5c01f550e6d17b439bea4d1ce3c979a091871b7..88831d41a67df179255d6463f344d297415e52e2 100644 (file)
@@ -1156,6 +1156,26 @@ runtime_malg(int32 stacksize, byte** ret_stack, size_t* ret_stacksize)
        return newg;
 }
 
+/* For runtime package testing.  */
+
+void runtime_testing_entersyscall(void)
+  __asm__("libgo_runtime.runtime.entersyscall");
+
+void
+runtime_testing_entersyscall()
+{
+       runtime_entersyscall();
+}
+
+void runtime_testing_exitsyscall(void)
+  __asm__("libgo_runtime.runtime.exitsyscall");
+
+void
+runtime_testing_exitsyscall()
+{
+       runtime_exitsyscall();
+}
+
 G*
 __go_go(void (*fn)(void*), void* arg)
 {
@@ -1330,6 +1350,17 @@ runtime_lockedOSThread(void)
        return g->lockedm != nil && m->lockedg != nil;
 }
 
+// for testing of callbacks
+
+_Bool runtime_golockedOSThread(void)
+  asm("libgo_runtime.runtime.golockedOSThread");
+
+_Bool
+runtime_golockedOSThread(void)
+{
+       return runtime_lockedOSThread();
+}
+
 // for testing of wire, unwire
 uint32
 runtime_mid()