Commit 97300640 authored by Shenghou Ma's avatar Shenghou Ma

test/bench/shoutout: fix compliation

-lm must come after the source file, versions of gcc insist this strict order.
On standard compliant systems, we no longer need malloc.h for malloc.
Use pkg-config(1) to get correct glib cflags and libs.
Fix compiler warning in threadring.c and k-nucleotide.c.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6198076
parent a0084b34
...@@ -36,7 +36,6 @@ POSSIBILITY OF SUCH DAMAGE. ...@@ -36,7 +36,6 @@ POSSIBILITY OF SUCH DAMAGE.
icc -O3 -ip -unroll -static binary-trees.c -lm icc -O3 -ip -unroll -static binary-trees.c -lm
*/ */
#include <malloc.h>
#include <math.h> #include <math.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
......
...@@ -221,7 +221,7 @@ main () ...@@ -221,7 +221,7 @@ main ()
free(s); free(s);
g_ptr_array_foreach(roots, free, NULL); g_ptr_array_foreach(roots, (GFunc)free, NULL);
g_ptr_array_free(roots, TRUE); g_ptr_array_free(roots, TRUE);
return 0; return 0;
......
...@@ -34,6 +34,7 @@ POSSIBILITY OF SUCH DAMAGE. ...@@ -34,6 +34,7 @@ POSSIBILITY OF SUCH DAMAGE.
* contributed by Premysl Hruby * contributed by Premysl Hruby
*/ */
#include <stdint.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <pthread.h> #include <pthread.h>
...@@ -57,7 +58,7 @@ static struct stack stacks[THREADS]; ...@@ -57,7 +58,7 @@ static struct stack stacks[THREADS];
static void* thread(void *num) static void* thread(void *num)
{ {
int l = (int)num; int l = (int)(uintptr_t)num;
int r = (l+1) % THREADS; int r = (l+1) % THREADS;
int token; int token;
...@@ -94,7 +95,7 @@ int main(int argc, char **argv) ...@@ -94,7 +95,7 @@ int main(int argc, char **argv)
pthread_mutex_lock(mutex + i); pthread_mutex_lock(mutex + i);
pthread_attr_setstack(&stack_attr, &stacks[i], sizeof(struct stack)); pthread_attr_setstack(&stack_attr, &stacks[i], sizeof(struct stack));
pthread_create(&cthread, &stack_attr, thread, (void*)i); pthread_create(&cthread, &stack_attr, thread, (void*)(uintptr_t)i);
} }
pthread_mutex_unlock(mutex + 0); pthread_mutex_unlock(mutex + 0);
......
...@@ -97,7 +97,7 @@ revcomp() { ...@@ -97,7 +97,7 @@ revcomp() {
nbody() { nbody() {
runonly echo 'nbody -n 50000000' runonly echo 'nbody -n 50000000'
run 'gcc -O2 -lm nbody.c' a.out 50000000 run 'gcc -O2 nbody.c -lm' a.out 50000000
run 'gccgo -O2 nbody.go' a.out -n 50000000 run 'gccgo -O2 nbody.go' a.out -n 50000000
run 'gc nbody' $O.out -n 50000000 run 'gc nbody' $O.out -n 50000000
run 'gc_B nbody' $O.out -n 50000000 run 'gc_B nbody' $O.out -n 50000000
...@@ -147,7 +147,7 @@ knucleotide() { ...@@ -147,7 +147,7 @@ knucleotide() {
runonly gcc -O2 fasta.c runonly gcc -O2 fasta.c
runonly a.out 1000000 > x # should be using 25000000 runonly a.out 1000000 > x # should be using 25000000
runonly echo 'k-nucleotide 1000000' runonly echo 'k-nucleotide 1000000'
run 'gcc -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include k-nucleotide.c -lglib-2.0' a.out <x run "gcc -O2 k-nucleotide.c $(pkg-config glib-2.0 --cflags --libs)" a.out <x
run 'gccgo -O2 k-nucleotide.go' a.out <x run 'gccgo -O2 k-nucleotide.go' a.out <x
run 'gccgo -O2 k-nucleotide-parallel.go' a.out <x run 'gccgo -O2 k-nucleotide-parallel.go' a.out <x
run 'gc k-nucleotide' $O.out <x run 'gc k-nucleotide' $O.out <x
......
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