aboutsummaryrefslogtreecommitdiffstats
path: root/test/ccured_olden/perimeter
diff options
context:
space:
mode:
Diffstat (limited to 'test/ccured_olden/perimeter')
-rw-r--r--test/ccured_olden/perimeter/.cvsignore32
-rw-r--r--test/ccured_olden/perimeter/CVS/Entries9
-rw-r--r--test/ccured_olden/perimeter/CVS/Repository1
-rw-r--r--test/ccured_olden/perimeter/CVS/Root1
-rw-r--r--test/ccured_olden/perimeter/Makefile99
-rw-r--r--test/ccured_olden/perimeter/README20
-rw-r--r--test/ccured_olden/perimeter/main.c221
-rw-r--r--test/ccured_olden/perimeter/maketree.c120
-rw-r--r--test/ccured_olden/perimeter/out.orig3
-rw-r--r--test/ccured_olden/perimeter/output4
-rw-r--r--test/ccured_olden/perimeter/perimeter.h54
-rwxr-xr-xtest/ccured_olden/perimeter/testit25
12 files changed, 0 insertions, 589 deletions
diff --git a/test/ccured_olden/perimeter/.cvsignore b/test/ccured_olden/perimeter/.cvsignore
deleted file mode 100644
index 9cd22bfd..00000000
--- a/test/ccured_olden/perimeter/.cvsignore
+++ /dev/null
@@ -1,32 +0,0 @@
-*.o
-*.obj
-*.exe
-*.pdb
-*.ilk
-*.cpp
-*.i
-*.s
-*.asm
-*cil.c
-*.rtl
-*box.c
-*infer.c
-*_ppp.c
-*.origi
-*.stackdump
-*_all.c
-changes.out
-perimeter.cil
-perimeter.*box
-allcfiles
-ope.m
-ope.m
-*cured.c
-*.optim.c
-*_comb.c
-changes
-output
-out.diff
-*.browser
-*optimcured*
-
diff --git a/test/ccured_olden/perimeter/CVS/Entries b/test/ccured_olden/perimeter/CVS/Entries
deleted file mode 100644
index 4d821ece..00000000
--- a/test/ccured_olden/perimeter/CVS/Entries
+++ /dev/null
@@ -1,9 +0,0 @@
-/Makefile/1.3/Sun Jul 8 14:10:47 2001//
-/README/1.1/Tue Jun 12 04:17:59 2001//
-/main.c/1.1/Tue Jun 12 04:17:59 2001//
-/maketree.c/1.1/Tue Jun 12 04:17:59 2001//
-/out.orig/1.1/Mon Nov 12 08:08:28 2001//
-/testit/1.2/Tue Dec 4 05:07:50 2001//
-/.cvsignore/1.14/Wed Aug 7 01:48:13 2002//
-/perimeter.h/1.4/Sat Jan 11 20:38:42 2003//
-D
diff --git a/test/ccured_olden/perimeter/CVS/Repository b/test/ccured_olden/perimeter/CVS/Repository
deleted file mode 100644
index 63138464..00000000
--- a/test/ccured_olden/perimeter/CVS/Repository
+++ /dev/null
@@ -1 +0,0 @@
-cil/test/olden/perimeter
diff --git a/test/ccured_olden/perimeter/CVS/Root b/test/ccured_olden/perimeter/CVS/Root
deleted file mode 100644
index 35f411e9..00000000
--- a/test/ccured_olden/perimeter/CVS/Root
+++ /dev/null
@@ -1 +0,0 @@
-/home/cvs-repository
diff --git a/test/ccured_olden/perimeter/Makefile b/test/ccured_olden/perimeter/Makefile
deleted file mode 100644
index 2e0ad696..00000000
--- a/test/ccured_olden/perimeter/Makefile
+++ /dev/null
@@ -1,99 +0,0 @@
-# /* For copyright information, see olden_v1.01/COPYRIGHT */
-.KEEP_STATE:
-SRCS = main.c maketree.c
-
-OLDEN_DIR=/u/ac/carlisle/olden_v1.01
-RCC = $(OLDEN_DIR)/mcc/sparc/backend/mcc
-CPP = gcc -E -U__GNUC__ -D_NO_LONGLONG
-#CPPFLAGS = -DVERIFY_AFFINITIES
-CPPFLAGS =
-#LIBFLAGS = "CPPFLAGS=-DPROF"
-#LIBFLAGS = "CPPFLAGS=-DVISUALIZE" "VFLAG=-v"
-LIBFLAGS =
-#PFLAG = -p
-PFLAG =
-PLIBOBJS = plain.o plain2.o
-LIBOBJS = libolden.a
-OBJS = $(SRCS:%.c=%.o) args.o
-ROBJS = $(SRCS:%.c=%.r.o) args.o
-LIBLINK = $(LIBOBJS:%=$(OLDEN_DIR)/runtime/%)
-RLIBLINK = $(PLIBOBJS:%=$(OLDEN_DIR)/runtime/%)
-INCDIRS = /usr/include $(OLDEN_DIR)/runtime
-NODELIBS =
-LIBDIRS =
-
-CC = cc
-#sm: CFLAGS =
-CFLAGS = -O2
-
-
-# sm:
-PLAIN=1
-all: defaulttarget
-
-ifdef PLAIN
-ifdef _MSVC
-EXTOBJ = .obj
-OBJOUT = /Fo
-EXEOUT = /Fe
-CFLAGS = /DPLAIN
-CONLY = /c
-CC = cl
-else
-EXTOBJ = .o
-OBJOUT = -o
-EXEOUT = -o
-CFLAGS += -DPLAIN
-CONLY = -c
-CC = gcc -arch ppc
-CCOMP=../../../ccomp
-CCOMPFLAGS=-dump-c
-
-endif
-
-OBJS = maketree$(EXTOBJ) main$(EXTOBJ)
-
-%.obj : %.c
- $(CC) $(CONLY) $(CFLAGS) $< $(OBJOUT)$@
-
-
-defaulttarget: $(OBJS)
- $(CC) $(CFLAGS) $(OBJS) $(EXEOUT)perimeter.exe
-endif
-
-perm: $(OBJS) target
- /usr/bin/cmmd-ld \
- -comp $(CC) $(OBJS) $(LIBLINK) -v -o /scratch1/carlisle/perm \
- $(LIBDIRS:%=-L%) $(NODELIBS:%=-l%)
-
-plain: $(ROBJS) target
- /usr/bin/cmmd-ld \
- -comp $(CC) $(ROBJS) $(RLIBLINK) -v -o /scratch1/carlisle/plainperm \
- $(LIBDIRS:%=-L%) $(NODELIBS:%=-l%)
-
-ifndef PLAIN
-args.s: args.c
- /lib/cpp $(CPPFLAGS) $(INCDIRS:%=-I%) args.c | $(RCC) > args.s
-endif
-
-%.s: %.c
- $(CPP) -DFUTURES $(CPPFLAGS) $(INCDIRS:%=-I%) $< | $(RCC) $(PFLAG) -n -m -k > $*.s
-
-
-%.p.s: %.c
- /lib/cpp -DPLAIN $(CPPFLAGS) $(INCDIRS:%=-I%) $< | $(RCC) -f > $*.p.s
-
-%.o: %.s
- $(CC) $(CFLAGS) -c $<
-
-
-%.r.o: %.p.s
- $(CC) $(CFLAGS) -c $< -o $*.r.o
-
-target:
- cd $(OLDEN_DIR)/runtime; make $(LIBFLAGS)
-
-clean:
- rm -f $(TARGET) $(OBJS) *.exe *.o *.obj *~ .make.state .nse_depinfo *.s *.light.c
-
-
diff --git a/test/ccured_olden/perimeter/README b/test/ccured_olden/perimeter/README
deleted file mode 100644
index c8f557c9..00000000
--- a/test/ccured_olden/perimeter/README
+++ /dev/null
@@ -1,20 +0,0 @@
-/* For copyright information, see olden_v1.01/COPYRIGHT */
-**********************
-olden_v1.01/benchmarks/perimeter/README
-June 1996
-Martin C. Carlisle
-
-this directory contains the Perimeter benchmark:
-
-H. Samet. "Computing Perimeters of Regions in Images Represented by Quad-
-Trees". IEEE Trans. on Pattern Analysis and Machine Intelligence
-PAMI-3(6), Nov. 1981
-
-as implemented for Olden by Martin C. Carlisle
-**********************
-
-Makefile - use "make perm" to create executable
-
-args.c - process command line args
-main.c,perimeter.h - main routines
-maketree.c - creates random quad-tree
diff --git a/test/ccured_olden/perimeter/main.c b/test/ccured_olden/perimeter/main.c
deleted file mode 100644
index ff58925a..00000000
--- a/test/ccured_olden/perimeter/main.c
+++ /dev/null
@@ -1,221 +0,0 @@
-#include "perimeter.h"
-#ifdef MIGRONLY
-#define BLAH MIGRPH()
-#else
-#define BLAH
-#endif
-
-#ifdef VERIFY_AFFINITIES
-#include "affinity.h"
-CHECK4(QuadTree,nw,ne,sw,se,tree)
-#endif
-
-static int adj(Direction d, ChildType ct)
-{
- BLAH;
- switch (d)
- {
- case north:
- return ((ct==northeast) || (ct==northwest));
- case south:
- return ((ct==southeast) || (ct==southwest));
- case east:
- return ((ct==northeast) || (ct==southeast));
- case west:
- return ((ct==southwest) || (ct==northwest));
- }
-}
-
-static ChildType reflect(Direction d, ChildType ct)
-{
- BLAH;
- if ((d==west) || (d==east))
- {
- switch(ct)
- {
- case northwest:
- return northeast;
- case northeast:
- return northwest;
- case southeast:
- return southwest;
- case southwest:
- return southeast;
- }
- }
- switch(ct)
- {
- case northwest:
- return southwest;
- case northeast:
- return southeast;
- case southeast:
- return northeast;
- case southwest:
- return northwest;
- }
-}
-
-int CountTree(QuadTree tree)
-{
- QuadTree nw,ne,sw,se;
-
- BLAH;
- nw = tree->nw; ne = tree->ne; sw = tree->sw; se = tree->se;
- if (nw==NULL && ne==NULL && sw==NULL && se==NULL)
- return 1;
- else
- return CountTree(nw) + CountTree(ne) + CountTree(sw) +
- CountTree(se);
-}
-
-static QuadTree child(QuadTree tree, ChildType ct)
-{
- BLAH;
- switch(ct)
- {
- case northeast:
- return tree->ne;
- case northwest:
- return tree->nw;
- case southeast:
- return tree->se;
- case southwest:
- return tree->sw;
- }
-}
-
-static QuadTree gtequal_adj_neighbor(QuadTree tree, Direction d)
-{
- QuadTree q,parent;
- ChildType ct;
-
- BLAH;
- parent=tree->parent;
- ct=tree->childtype;
- if ((parent!=NULL) && adj(d,ct))
- q=gtequal_adj_neighbor(parent,d);
- else q=parent;
- if (q && q->color==grey) {
- return child(q,reflect(d,ct));
- }
- else return q;
-}
-
-static int sum_adjacent(QuadTree p, ChildType q1, ChildType q2, int size)
-{
- BLAH;
- if (p->color==grey)
- {
- return sum_adjacent(child(p,q1),q1,q2,size/2) +
- sum_adjacent(child(p,q2),q1,q2,size/2);
- }
- else if (p->color==white)
- {
- return size;
- }
- else return 0;
-}
-
-int perimeter(QuadTree tree, int size)
-{
- int retval = 0;
- QuadTree neighbor;
-
- BLAH;
- if (tree->color==grey)
- {
- QuadTree child;
-#ifdef FUTURES
- future_cell_int fc_sw,fc_se,fc_ne;
-#endif
-
-#ifndef FUTURES
- child = tree->sw;
- retval += perimeter(child,size/2);
- child = tree->se;
- retval += perimeter(child,size/2);
- child = tree->ne;
- retval += perimeter(child,size/2);
- child = tree->nw;
- retval += perimeter(child,size/2);
-#else
- child = tree->sw;
- FUTURE(child,size/2,perimeter,&fc_sw);
- child = tree->se;
- FUTURE(child,size/2,perimeter,&fc_se);
- child = tree->ne;
- FUTURE(child,size/2,perimeter,&fc_ne);
- child = tree->nw;
- retval = perimeter(child,size/2);
- TOUCH(&fc_sw);
- TOUCH(&fc_se);
- TOUCH(&fc_ne);
- retval += fc_sw.value + fc_se.value + fc_ne.value;
-#endif
- }
- else if (tree->color==black)
- {
- /* North */
- neighbor=gtequal_adj_neighbor(tree,north);
- if ((neighbor==NULL) || (neighbor->color==white)) retval+=size;
- else if (neighbor->color==grey)
- retval+=sum_adjacent(neighbor,southeast,southwest,size);
- /* East */
- neighbor=gtequal_adj_neighbor(tree,east);
- if ((neighbor==NULL) || (neighbor->color==white)) retval+=size;
- else if (neighbor->color==grey)
- retval+=sum_adjacent(neighbor,southwest,northwest,size);
- /* South */
- neighbor=gtequal_adj_neighbor(tree,south);
- if ((neighbor==NULL) || (neighbor->color==white)) retval+=size;
- else if (neighbor->color==grey)
- retval+=sum_adjacent(neighbor,northwest,northeast,size);
- /* West */
- neighbor=gtequal_adj_neighbor(tree,west);
- if ((neighbor==NULL) || (neighbor->color==white)) retval+=size;
- else if (neighbor->color==grey)
- retval+=sum_adjacent(neighbor,northeast,southeast,size);
- }
- return retval;
-}
-
-#ifdef PLAIN
-double wallclock;
-int __NumNodes;
-#endif
-
-int main()
-{
- QuadTree tree;
- int count;
- int level;
- int i;
-
- BLAH;
- level = 12;
- __NumNodes = 1;
-
- chatting("Perimeter with %d levels on %d processors\n",level,__NumNodes);
- tree=MakeTree(2048,0,0,0,__NumNodes-1,NULL,southeast,level);
-#ifdef VERIFY_AFFINITIES
- Docheck_tree(tree);
-#endif
- count=CountTree(tree);
- chatting("# of leaves is %d\n",count);
-
-
- timer_start(0);
- for(i=0;i<100;i++) {
- count=perimeter(tree,4096);
- }
- timer_stop(0);
-
- chatting("perimeter is %d\n",count);
- chatting("Time elapsed = %f milliseconds\n", timer_elapsed(0));
-#ifdef FUTURES
- __ShutDown();
-#endif
- exit(0);
-}
-
diff --git a/test/ccured_olden/perimeter/maketree.c b/test/ccured_olden/perimeter/maketree.c
deleted file mode 100644
index 294ff028..00000000
--- a/test/ccured_olden/perimeter/maketree.c
+++ /dev/null
@@ -1,120 +0,0 @@
-#include "perimeter.h"
-
-static int CheckOutside(int x, int y)
-{
- int euclid = x*x+y*y;
-
- if (euclid > 4194304) return 1;
- if (euclid < 1048576) return -1;
- return 0;
-}
-
-static int CheckIntersect(int center_x, int center_y, int size)
-{
- int sum;
-
- if (!CheckOutside(center_x+size,center_y+size) &&
- !CheckOutside(center_x+size,center_y-size) &&
- !CheckOutside(center_x-size,center_y-size) &&
- !CheckOutside(center_x-size,center_y+size)) return 2;
- sum=CheckOutside(center_x+size,center_y+size) +
- CheckOutside(center_x+size,center_y-size) +
- CheckOutside(center_x-size,center_y-size) +
- CheckOutside(center_x-size,center_y+size);
- if ((sum==4) || (sum==-4)) return 0;
- return 1;
-}
-
-QuadTree MakeTree(int size, int center_x, int center_y, int lo_proc,
- int hi_proc, QuadTree parent, ChildType ct, int level)
-{
- int intersect=0;
- QuadTree retval;
-
-#ifdef FUTURES
- retval = (QuadTree) ALLOC(lo_proc,sizeof(*retval));
-#else
- retval = (QuadTree) mymalloc(sizeof(*retval));
-#endif
- retval->parent = parent;
- retval->childtype = ct;
-
- intersect = CheckIntersect(center_x,center_y,size);
- size = size/2;
- if ((intersect==0) && (size<512))
- {
- retval->color = white;
- retval->nw = NULL;
- retval->ne = NULL;
- retval->sw = NULL;
- retval->se = NULL;
- }
- else if (intersect==2)
- {
- retval->color=black;
- retval->nw = NULL;
- retval->ne = NULL;
- retval->sw = NULL;
- retval->se = NULL;
- }
- else
- {
- if (!level)
- {
- retval->color = black;
- retval->nw = NULL;
- retval->ne = NULL;
- retval->sw = NULL;
- retval->se = NULL;
- }
- else
- {
- int mid1,mid2;
-#ifdef FUTURES
- future_cell_int fc_sw,fc_se,fc_ne;
-#endif
-
- mid1 = (lo_proc+hi_proc)/2;
- mid2 = (lo_proc+hi_proc+1)/2;
-
-#ifndef FUTURES
- retval->sw = MakeTree(size,center_x-size,center_y-size,
- (mid2+hi_proc+1)/2,hi_proc,retval,
- southwest,level-1);
- retval->se = MakeTree(size,center_x+size,center_y-size,
- mid2,(mid2+hi_proc)/2,retval,
- southeast,level-1);
- retval->ne = MakeTree(size,center_x+size,center_y+size,
- (lo_proc+mid1+1)/2,mid1,retval,
- northeast,level-1);
- retval->nw = MakeTree(size,center_x-size,center_y+size,
- lo_proc,(lo_proc+mid1)/2,retval,
- northwest,level-1);
-#else
- FUTURE(size,center_x-size,center_y-size,
- (mid2+hi_proc+1)/2,hi_proc,retval,
- southwest,level-1,MakeTree,&fc_sw);
- FUTURE(size,center_x+size,center_y-size,
- mid2,(mid2+hi_proc)/2,retval,
- southeast,level-1,MakeTree,&fc_se);
- FUTURE(size,center_x+size,center_y+size,
- (lo_proc+mid1+1)/2,mid1,retval,
- northeast,level-1,MakeTree,&fc_ne);
- retval->nw = MakeTree(size,center_x-size,center_y+size,
- lo_proc,(lo_proc+mid1)/2,retval,
- northwest,level-1);
- TOUCH(&fc_sw);
- retval->sw = (QuadTree) fc_sw.value;
- TOUCH(&fc_se);
- retval->se = (QuadTree) fc_se.value;
- TOUCH(&fc_ne);
- retval->ne = (QuadTree) fc_ne.value;
-#endif
- retval->color = grey;
- }
- }
- return retval;
-}
-
-
-
diff --git a/test/ccured_olden/perimeter/out.orig b/test/ccured_olden/perimeter/out.orig
deleted file mode 100644
index 98edab51..00000000
--- a/test/ccured_olden/perimeter/out.orig
+++ /dev/null
@@ -1,3 +0,0 @@
-Perimeter with 12 levels on 1 processors
-# of leaves is 73432
-perimeter is 24576
diff --git a/test/ccured_olden/perimeter/output b/test/ccured_olden/perimeter/output
deleted file mode 100644
index 5906be43..00000000
--- a/test/ccured_olden/perimeter/output
+++ /dev/null
@@ -1,4 +0,0 @@
-Perimeter with 12 levels on 1 processors
-# of leaves is 73432
-perimeter is 24576
-Time elapsed = 2970.000000 milliseconds
diff --git a/test/ccured_olden/perimeter/perimeter.h b/test/ccured_olden/perimeter/perimeter.h
deleted file mode 100644
index e5cc086b..00000000
--- a/test/ccured_olden/perimeter/perimeter.h
+++ /dev/null
@@ -1,54 +0,0 @@
-#define NULL 0
-
-#ifndef PLAIN
-#include <cm/cmmd.h>
-
-#ifdef FUTURES
-#include "future-cell.h"
-#endif
-#include "mem-ref.h"
-#endif
-
-typedef enum {black, white, grey} Color;
-typedef enum {northwest, northeast, southwest, southeast} ChildType;
-typedef enum {north, east, south, west} Direction;
-
-typedef struct quad_struct {
- Color color;
- ChildType childtype;
- struct quad_struct *nw ; // {50};
- struct quad_struct *ne ; //{50};
- struct quad_struct *sw ; // {50};
- struct quad_struct *se ; //{50};
- struct quad_struct *parent; // {50};
-} *QuadTree;
-
-QuadTree MakeTree(int size, int center_x, int center_y, int lo_proc,
- int hi_proc, QuadTree parent, ChildType ct, int level);
-
-
-#include <stdlib.h> //malloc
-#include <stdio.h> // printf
-
-extern void exit(int);
-
-extern int __NumNodes;
-
-#ifdef PLAIN
-#include <time.h>
-#define local
-#define mymalloc malloc
-#define CMMD_node_timer_clear(x) (void)0
-#define TIMESTART(clk) {clk=(double)clock();}
-#define TIMESTOP(clk) {clk=1000000.0 * ((double)clock()-(clk))/CLOCKS_PER_SEC;}
-extern double wallclock;
-#define timer_start(x) TIMESTART(wallclock)
-#define timer_stop(x) TIMESTOP(wallclock)
-#define timer_elapsed(x) (wallclock / 1000.0)
-#define chatting printf
-#define NOTEST() (void)0
-#define RETEST() (void)0
-#define mymalloc malloc
-#endif
-
-
diff --git a/test/ccured_olden/perimeter/testit b/test/ccured_olden/perimeter/testit
deleted file mode 100755
index 35723c5f..00000000
--- a/test/ccured_olden/perimeter/testit
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/sh
-# test a perimeter binary
-
-if [ "$1" = "" ]; then
- echo "usage: $0 ./perimeter.exe"
- exit
-fi
-
-# all of perimeter's output is to stdout
-echo "running: $1 >output"
-if ! $1 >output; then
- echo "$1 failed directly"
- exit 2
-fi
-
-if ! grep -v "Time elapsed" <output | diff out.orig - >out.diff 2>&1 ; then
- # For some reason diff returns error code but an empty diff !
- if test -s out.diff; then
- echo "$1 got the wrong answer. See out.diff."
- exit 4
- fi
-fi
-echo "$1 seems to work"
-rm -f out.diff
- \ No newline at end of file