#!/bin/sh
#
# Copyright (C) 1990 Department of Computer Science, University of Queensland
#
#make a relation "/* instruction */  num," from execute.c
#
#simple modification from previous version which created quprolog code
#

echo "/*
 * Copyright (C) 19`date +%y` Department of Computer Science, University of Queensland
 */
"

echo 'int size_of_instruction[] =
{
/* BLANK ZERO ENTRY */ 0,
'

sed -n '1,/^	.*{/ d
/^	otherwise/,$d
/^	when / {
	s/	when //
	s/://
	x
	: loop
	n
	/^#ifdef/{
		: ifdef
		n
		/^#endif/!b ifdef
		n
	}
	/^		Get/{
		s/		Get//
		s/;//
		H
		b loop
	}
	x
	s/\n/, /g
	s/$/, /
	p
	x
}
' |
	tr [A-Z] [a-z] |
	sed '	s/(a/(A/g
		s/(b/(B/g
		s/(c/(C/g
		s/(d/(D/g
		s/(e/(E/g
		s/(f/(F/g
		s/(g/(G/g
		s/(h/(H/g
		s/(i/(I/g
		s/(j/(J/g
		s/(k/(K/g
		s/(l/(L/g
		s/(m/(M/g
		s/(n/(N/g
		s/(o/(O/g
		s/(p/(P/g
		s/(q/(Q/g
		s/(r/(R/g
		s/(s/(S/g
		s/(t/(T/g
		s/(u/(U/g
		s/(v/(V/g
		s/(w/(W/g
		s/(x/(X/g
		s/(y/(Y/g
		s/(z/(Z/g
		s/\([^,]*\), \(.*\)/echo "\/* \1 \2 *\/ `expr \\\
\2 1`,"/
		s/, )/)/
		s/()//' |
	sed '	/^echo /s/[a-z_]*(\([^()]*\))/\1/g
		/^echo /!{
			s/, / + /g
			s/constant([^()]*)/4/g
			s/register([^()]*)/1/g
			s/number([^()]*)/1/g
			s/address([^()]*)/4/g
			s/offset([^()]*)/2/g
			s/predatom([^()]*)/3/g
		}' |
	sh

echo "
};"
