#! /bin/sh SED="sed" if [ `which gsed 2> /dev/null` ] ; then SED="gsed" fi TEST_NAME=$1 TEST_VALIDITY=$2 TEST_OP=$3 TEST_CLASS_ACCESS=$4 TEST_MEMBER_ACCESS=$5 TEST_EXTENDS=$6 TEST_LOAD_BASE=$7 if [ "$TEST_EXTENDS" == "yes" ]; then TEST_EXTENDS="extends Owner\/Nested" TEST_CONSTRUCTOR="call instance void Owner\/Nested::.ctor()" else TEST_EXTENDS="extends [mscorlib]System.Object" TEST_CONSTRUCTOR="call instance void object::.ctor()" fi if [ "$TEST_LOAD_BASE" == "yes" ]; then TEST_LOAD_REF="ldarg.0" else TEST_LOAD_REF="call class Owner\/Nested Owner::Create ()" fi TEST_NAME=${TEST_VALIDITY}_${TEST_NAME} TEST_FILE=${TEST_NAME}_generated.il echo $TEST_FILE $SED -e "s/VALIDITY/${TEST_VALIDITY}/g" -e "s/OPCODE/${TEST_OP}/g" -e "s/CONSTRUCTOR/${TEST_CONSTRUCTOR}/g" -e "s/CLASS_ACCESS/${TEST_CLASS_ACCESS}/g" -e "s/MEMBER_ACCESS/${TEST_MEMBER_ACCESS}/g" -e "s/EXTENDS/${TEST_EXTENDS}/g" -e "s/LOAD_REF/${TEST_LOAD_REF}/g" > $TEST_FILE <