From 631a92314abaefe6e0d275647ed815a3fb34fd81 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Wed, 9 Jun 2010 20:45:39 +0200 Subject: [PATCH] ppc: testfaelle fuer ppc32 'portiert' --- codeb/georg_fib_000.call | 2 +- codeb/georg_fib_020.call | 2 +- gesamt/codea_abgabe_aq.0 | 2 +- gesamt/codeb_abgabe_ba.call | 5 +- gesamt/codeb_abgabe_bj.0 | 2 +- gesamt/codeb_abgabe_bj.call | 10 +- gesamt/intelli_00.0 | 2 +- gesamt/intelli_00.call | 6 +- gesamt/intelli_01.call | 8 +- gesamt/intelli_02.call | 8 +- gesamt/intelli_03.call | 14 +-- gesamt/lewurm_04.0 | 1 + gesamt/lewurm_09.0 | 8 +- gesamt/lewurm_09.call | 14 +-- gesamt_ppc/codea_abgabe_a.0 | 3 + gesamt_ppc/codea_abgabe_a.call | 2 + gesamt_ppc/codea_abgabe_a.instr | 1 + gesamt_ppc/codea_abgabe_aa.0 | 3 + gesamt_ppc/codea_abgabe_aa.call | 2 + gesamt_ppc/codea_abgabe_aa.instr | 1 + gesamt_ppc/codea_abgabe_ab.0 | 3 + gesamt_ppc/codea_abgabe_ab.call | 2 + gesamt_ppc/codea_abgabe_ab.instr | 1 + gesamt_ppc/codea_abgabe_ac.0 | 3 + gesamt_ppc/codea_abgabe_ac.call | 2 + gesamt_ppc/codea_abgabe_ac.instr | 1 + gesamt_ppc/codea_abgabe_ad.0 | 3 + gesamt_ppc/codea_abgabe_ad.call | 2 + gesamt_ppc/codea_abgabe_ad.instr | 1 + gesamt_ppc/codea_abgabe_ae.0 | 3 + gesamt_ppc/codea_abgabe_ae.call | 2 + gesamt_ppc/codea_abgabe_ae.instr | 1 + gesamt_ppc/codea_abgabe_af.0 | 3 + gesamt_ppc/codea_abgabe_af.call | 2 + gesamt_ppc/codea_abgabe_af.instr | 1 + gesamt_ppc/codea_abgabe_ag.0 | 3 + gesamt_ppc/codea_abgabe_ag.call | 2 + gesamt_ppc/codea_abgabe_ag.instr | 1 + gesamt_ppc/codea_abgabe_ah.0 | 3 + gesamt_ppc/codea_abgabe_ah.call | 2 + gesamt_ppc/codea_abgabe_ah.instr | 1 + gesamt_ppc/codea_abgabe_ai.0 | 3 + gesamt_ppc/codea_abgabe_ai.call | 2 + gesamt_ppc/codea_abgabe_ai.instr | 1 + gesamt_ppc/codea_abgabe_aj.0 | 3 + gesamt_ppc/codea_abgabe_aj.call | 2 + gesamt_ppc/codea_abgabe_aj.instr | 1 + gesamt_ppc/codea_abgabe_ak.0 | 3 + gesamt_ppc/codea_abgabe_ak.call | 2 + gesamt_ppc/codea_abgabe_ak.instr | 1 + gesamt_ppc/codea_abgabe_al.0 | 6 ++ gesamt_ppc/codea_abgabe_al.call | 3 + gesamt_ppc/codea_abgabe_al.instr | 1 + gesamt_ppc/codea_abgabe_am.0 | 6 ++ gesamt_ppc/codea_abgabe_am.call | 4 + gesamt_ppc/codea_abgabe_am.instr | 1 + gesamt_ppc/codea_abgabe_an.0 | 3 + gesamt_ppc/codea_abgabe_an.call | 2 + gesamt_ppc/codea_abgabe_an.instr | 1 + gesamt_ppc/codea_abgabe_ao.0 | 3 + gesamt_ppc/codea_abgabe_ao.call | 2 + gesamt_ppc/codea_abgabe_ao.instr | 1 + gesamt_ppc/codea_abgabe_ap.0 | 3 + gesamt_ppc/codea_abgabe_ap.call | 2 + gesamt_ppc/codea_abgabe_ap.instr | 1 + gesamt_ppc/codea_abgabe_aq.0 | 5 + gesamt_ppc/codea_abgabe_aq.call | 3 + gesamt_ppc/codea_abgabe_aq.instr | 1 + gesamt_ppc/codea_abgabe_ar.0 | 7 ++ gesamt_ppc/codea_abgabe_ar.call | 3 + gesamt_ppc/codea_abgabe_ar.instr | 1 + gesamt_ppc/codea_abgabe_as.0 | 5 + gesamt_ppc/codea_abgabe_as.call | 3 + gesamt_ppc/codea_abgabe_as.instr | 1 + gesamt_ppc/codea_abgabe_x0.1 | 1 + gesamt_ppc/codea_abgabe_x1.1 | 1 + gesamt_ppc/codea_abgabe_x2.1 | 1 + gesamt_ppc/codea_abgabe_x3.1 | 1 + gesamt_ppc/codea_abgabe_y0.2 | 2 + gesamt_ppc/codea_abgabe_y1.2 | 3 + gesamt_ppc/codea_abgabe_y2.2 | 3 + gesamt_ppc/codea_abgabe_y3.2 | 4 + gesamt_ppc/codea_abgabe_y4.2 | 3 + gesamt_ppc/codea_abgabe_y5.2 | 3 + gesamt_ppc/codea_abgabe_y6.2 | 3 + gesamt_ppc/codea_abgabe_y7.2 | 3 + gesamt_ppc/codea_abgabe_y8.2 | 3 + gesamt_ppc/codea_abgabe_y9.2 | 3 + gesamt_ppc/codea_abgabe_z0.3 | 3 + gesamt_ppc/codea_abgabe_za.3 | 2 + gesamt_ppc/codea_abgabe_zb.3 | 5 + gesamt_ppc/codea_abgabe_zc.3 | 10 ++ gesamt_ppc/codea_abgabe_zd.3 | 4 + gesamt_ppc/codea_abgabe_ze.3 | 7 ++ gesamt_ppc/codea_abgabe_zf.3 | 7 ++ gesamt_ppc/codea_abgabe_zg.3 | 4 + gesamt_ppc/codea_abgabe_zh.3 | 7 ++ gesamt_ppc/codea_abgabe_zi.3 | 3 + gesamt_ppc/codea_abgabe_zj.3 | 3 + gesamt_ppc/codeb_abgabe_ba.0 | 4 + gesamt_ppc/codeb_abgabe_ba.call | 5 + gesamt_ppc/codeb_abgabe_ba.instr | 1 + gesamt_ppc/codeb_abgabe_bb.0 | 4 + gesamt_ppc/codeb_abgabe_bb.call | 2 + gesamt_ppc/codeb_abgabe_bb.instr | 1 + gesamt_ppc/codeb_abgabe_bc.0 | 7 ++ gesamt_ppc/codeb_abgabe_bc.call | 2 + gesamt_ppc/codeb_abgabe_bc.instr | 1 + gesamt_ppc/codeb_abgabe_bd.0 | 6 ++ gesamt_ppc/codeb_abgabe_bd.call | 2 + gesamt_ppc/codeb_abgabe_bd.instr | 1 + gesamt_ppc/codeb_abgabe_be.0 | 12 +++ gesamt_ppc/codeb_abgabe_be.call | 2 + gesamt_ppc/codeb_abgabe_be.instr | 1 + gesamt_ppc/codeb_abgabe_bf.0 | 11 +++ gesamt_ppc/codeb_abgabe_bf.call | 2 + gesamt_ppc/codeb_abgabe_bf.instr | 1 + gesamt_ppc/codeb_abgabe_bg.0 | 11 +++ gesamt_ppc/codeb_abgabe_bg.call | 9 ++ gesamt_ppc/codeb_abgabe_bg.instr | 1 + gesamt_ppc/codeb_abgabe_bh.0 | 9 ++ gesamt_ppc/codeb_abgabe_bh.call | 6 ++ gesamt_ppc/codeb_abgabe_bh.instr | 1 + gesamt_ppc/codeb_abgabe_bi.0 | 17 ++++ gesamt_ppc/codeb_abgabe_bi.call | 9 ++ gesamt_ppc/codeb_abgabe_bi.instr | 1 + gesamt_ppc/codeb_abgabe_bj.0 | 10 ++ gesamt_ppc/codeb_abgabe_bj.call | 14 +++ gesamt_ppc/codeb_abgabe_bj.instr | 1 + gesamt_ppc/georg_fib_000.call | 1 + gesamt_ppc/georg_fib_020.call | 1 + gesamt_ppc/georg_fib_100.call | 1 + gesamt_ppc/georg_fib_101.0 | 23 +++++ gesamt_ppc/georg_fib_101.call | 1 + gesamt_ppc/georg_fib_101.instr | 1 + gesamt_ppc/georg_fib_102.0 | 25 +++++ gesamt_ppc/georg_fib_102.call | 1 + gesamt_ppc/georg_fib_102.instr | 1 + gesamt_ppc/georg_fib_120.call | 1 + gesamt_ppc/georg_fib_121.0 | 10 ++ gesamt_ppc/georg_fib_121.call | 1 + gesamt_ppc/georg_fib_121.instr | 1 + gesamt_ppc/georg_fib_122.0 | 12 +++ gesamt_ppc/georg_fib_122.call | 1 + gesamt_ppc/georg_fib_122.instr | 1 + gesamt_ppc/intelli_00.0 | 7 ++ gesamt_ppc/intelli_00.call | 3 + gesamt_ppc/intelli_00.instr | 1 + gesamt_ppc/intelli_01.0 | 7 ++ gesamt_ppc/intelli_01.call | 7 ++ gesamt_ppc/intelli_01.instr | 1 + gesamt_ppc/intelli_02.0 | 12 +++ gesamt_ppc/intelli_02.call | 7 ++ gesamt_ppc/intelli_02.instr | 1 + gesamt_ppc/intelli_03.0 | 15 +++ gesamt_ppc/intelli_03.call | 21 +++++ gesamt_ppc/intelli_03.instr | 1 + gesamt_ppc/lewurm_00.0 | 8 ++ gesamt_ppc/lewurm_00.call | 2 + gesamt_ppc/lewurm_00.instr | 1 + gesamt_ppc/lewurm_01.0 | 8 ++ gesamt_ppc/lewurm_01.call | 5 + gesamt_ppc/lewurm_01.instr | 1 + gesamt_ppc/lewurm_02.0 | 13 +++ gesamt_ppc/lewurm_02.call | 5 + gesamt_ppc/lewurm_02.instr | 1 + gesamt_ppc/lewurm_03.0 | 7 ++ gesamt_ppc/lewurm_03.call | 5 + gesamt_ppc/lewurm_03.instr | 1 + gesamt_ppc/lewurm_04.0 | 8 ++ gesamt_ppc/lewurm_04.call | 9 ++ gesamt_ppc/lewurm_04.instr | 1 + gesamt_ppc/lewurm_05.0 | 31 +++++++ gesamt_ppc/lewurm_05.call | 21 +++++ gesamt_ppc/lewurm_05.instr | 1 + gesamt_ppc/lewurm_06.0 | 7 ++ gesamt_ppc/lewurm_06.call | 12 +++ gesamt_ppc/lewurm_06.instr | 1 + gesamt_ppc/lewurm_07.0 | 8 ++ gesamt_ppc/lewurm_07.call | 7 ++ gesamt_ppc/lewurm_07.instr | 1 + gesamt_ppc/lewurm_08.0 | 17 ++++ gesamt_ppc/lewurm_08.call | 11 +++ gesamt_ppc/lewurm_08.instr | 1 + gesamt_ppc/lewurm_09.0 | 20 ++++ gesamt_ppc/lewurm_09.call | 20 ++++ gesamt_ppc/lewurm_09.instr | 1 + scripts/callingconvention.c | 13 +++ scripts/callingconvention.o | Bin 1952 -> 892 bytes scripts/modlvatest_gesamt.sh | 6 +- scripts/modlvatest_gesamt_ppc.sh | 152 +++++++++++++++++++++++++++++++ scripts/onetest_gesamt | 3 +- scripts/onetest_gesamt_ppc | 116 +++++++++++++++++++++++ 193 files changed, 1116 insertions(+), 40 deletions(-) create mode 100644 gesamt_ppc/codea_abgabe_a.0 create mode 100644 gesamt_ppc/codea_abgabe_a.call create mode 100644 gesamt_ppc/codea_abgabe_a.instr create mode 100644 gesamt_ppc/codea_abgabe_aa.0 create mode 100644 gesamt_ppc/codea_abgabe_aa.call create mode 100644 gesamt_ppc/codea_abgabe_aa.instr create mode 100644 gesamt_ppc/codea_abgabe_ab.0 create mode 100644 gesamt_ppc/codea_abgabe_ab.call create mode 100644 gesamt_ppc/codea_abgabe_ab.instr create mode 100644 gesamt_ppc/codea_abgabe_ac.0 create mode 100644 gesamt_ppc/codea_abgabe_ac.call create mode 100644 gesamt_ppc/codea_abgabe_ac.instr create mode 100644 gesamt_ppc/codea_abgabe_ad.0 create mode 100644 gesamt_ppc/codea_abgabe_ad.call create mode 100644 gesamt_ppc/codea_abgabe_ad.instr create mode 100644 gesamt_ppc/codea_abgabe_ae.0 create mode 100644 gesamt_ppc/codea_abgabe_ae.call create mode 100644 gesamt_ppc/codea_abgabe_ae.instr create mode 100644 gesamt_ppc/codea_abgabe_af.0 create mode 100644 gesamt_ppc/codea_abgabe_af.call create mode 100644 gesamt_ppc/codea_abgabe_af.instr create mode 100644 gesamt_ppc/codea_abgabe_ag.0 create mode 100644 gesamt_ppc/codea_abgabe_ag.call create mode 100644 gesamt_ppc/codea_abgabe_ag.instr create mode 100644 gesamt_ppc/codea_abgabe_ah.0 create mode 100644 gesamt_ppc/codea_abgabe_ah.call create mode 100644 gesamt_ppc/codea_abgabe_ah.instr create mode 100644 gesamt_ppc/codea_abgabe_ai.0 create mode 100644 gesamt_ppc/codea_abgabe_ai.call create mode 100644 gesamt_ppc/codea_abgabe_ai.instr create mode 100644 gesamt_ppc/codea_abgabe_aj.0 create mode 100644 gesamt_ppc/codea_abgabe_aj.call create mode 100644 gesamt_ppc/codea_abgabe_aj.instr create mode 100644 gesamt_ppc/codea_abgabe_ak.0 create mode 100644 gesamt_ppc/codea_abgabe_ak.call create mode 100644 gesamt_ppc/codea_abgabe_ak.instr create mode 100644 gesamt_ppc/codea_abgabe_al.0 create mode 100644 gesamt_ppc/codea_abgabe_al.call create mode 100644 gesamt_ppc/codea_abgabe_al.instr create mode 100644 gesamt_ppc/codea_abgabe_am.0 create mode 100644 gesamt_ppc/codea_abgabe_am.call create mode 100644 gesamt_ppc/codea_abgabe_am.instr create mode 100644 gesamt_ppc/codea_abgabe_an.0 create mode 100644 gesamt_ppc/codea_abgabe_an.call create mode 100644 gesamt_ppc/codea_abgabe_an.instr create mode 100644 gesamt_ppc/codea_abgabe_ao.0 create mode 100644 gesamt_ppc/codea_abgabe_ao.call create mode 100644 gesamt_ppc/codea_abgabe_ao.instr create mode 100644 gesamt_ppc/codea_abgabe_ap.0 create mode 100644 gesamt_ppc/codea_abgabe_ap.call create mode 100644 gesamt_ppc/codea_abgabe_ap.instr create mode 100644 gesamt_ppc/codea_abgabe_aq.0 create mode 100644 gesamt_ppc/codea_abgabe_aq.call create mode 100644 gesamt_ppc/codea_abgabe_aq.instr create mode 100644 gesamt_ppc/codea_abgabe_ar.0 create mode 100644 gesamt_ppc/codea_abgabe_ar.call create mode 100644 gesamt_ppc/codea_abgabe_ar.instr create mode 100644 gesamt_ppc/codea_abgabe_as.0 create mode 100644 gesamt_ppc/codea_abgabe_as.call create mode 100644 gesamt_ppc/codea_abgabe_as.instr create mode 100644 gesamt_ppc/codea_abgabe_x0.1 create mode 100644 gesamt_ppc/codea_abgabe_x1.1 create mode 100644 gesamt_ppc/codea_abgabe_x2.1 create mode 100644 gesamt_ppc/codea_abgabe_x3.1 create mode 100644 gesamt_ppc/codea_abgabe_y0.2 create mode 100644 gesamt_ppc/codea_abgabe_y1.2 create mode 100644 gesamt_ppc/codea_abgabe_y2.2 create mode 100644 gesamt_ppc/codea_abgabe_y3.2 create mode 100644 gesamt_ppc/codea_abgabe_y4.2 create mode 100644 gesamt_ppc/codea_abgabe_y5.2 create mode 100644 gesamt_ppc/codea_abgabe_y6.2 create mode 100644 gesamt_ppc/codea_abgabe_y7.2 create mode 100644 gesamt_ppc/codea_abgabe_y8.2 create mode 100644 gesamt_ppc/codea_abgabe_y9.2 create mode 100644 gesamt_ppc/codea_abgabe_z0.3 create mode 100644 gesamt_ppc/codea_abgabe_za.3 create mode 100644 gesamt_ppc/codea_abgabe_zb.3 create mode 100644 gesamt_ppc/codea_abgabe_zc.3 create mode 100644 gesamt_ppc/codea_abgabe_zd.3 create mode 100644 gesamt_ppc/codea_abgabe_ze.3 create mode 100644 gesamt_ppc/codea_abgabe_zf.3 create mode 100644 gesamt_ppc/codea_abgabe_zg.3 create mode 100644 gesamt_ppc/codea_abgabe_zh.3 create mode 100644 gesamt_ppc/codea_abgabe_zi.3 create mode 100644 gesamt_ppc/codea_abgabe_zj.3 create mode 100644 gesamt_ppc/codeb_abgabe_ba.0 create mode 100644 gesamt_ppc/codeb_abgabe_ba.call create mode 100644 gesamt_ppc/codeb_abgabe_ba.instr create mode 100644 gesamt_ppc/codeb_abgabe_bb.0 create mode 100644 gesamt_ppc/codeb_abgabe_bb.call create mode 100644 gesamt_ppc/codeb_abgabe_bb.instr create mode 100644 gesamt_ppc/codeb_abgabe_bc.0 create mode 100644 gesamt_ppc/codeb_abgabe_bc.call create mode 100644 gesamt_ppc/codeb_abgabe_bc.instr create mode 100644 gesamt_ppc/codeb_abgabe_bd.0 create mode 100644 gesamt_ppc/codeb_abgabe_bd.call create mode 100644 gesamt_ppc/codeb_abgabe_bd.instr create mode 100644 gesamt_ppc/codeb_abgabe_be.0 create mode 100644 gesamt_ppc/codeb_abgabe_be.call create mode 100644 gesamt_ppc/codeb_abgabe_be.instr create mode 100644 gesamt_ppc/codeb_abgabe_bf.0 create mode 100644 gesamt_ppc/codeb_abgabe_bf.call create mode 100644 gesamt_ppc/codeb_abgabe_bf.instr create mode 100644 gesamt_ppc/codeb_abgabe_bg.0 create mode 100644 gesamt_ppc/codeb_abgabe_bg.call create mode 100644 gesamt_ppc/codeb_abgabe_bg.instr create mode 100644 gesamt_ppc/codeb_abgabe_bh.0 create mode 100644 gesamt_ppc/codeb_abgabe_bh.call create mode 100644 gesamt_ppc/codeb_abgabe_bh.instr create mode 100644 gesamt_ppc/codeb_abgabe_bi.0 create mode 100644 gesamt_ppc/codeb_abgabe_bi.call create mode 100644 gesamt_ppc/codeb_abgabe_bi.instr create mode 100644 gesamt_ppc/codeb_abgabe_bj.0 create mode 100644 gesamt_ppc/codeb_abgabe_bj.call create mode 100644 gesamt_ppc/codeb_abgabe_bj.instr create mode 120000 gesamt_ppc/georg_fib_000.call create mode 120000 gesamt_ppc/georg_fib_020.call create mode 120000 gesamt_ppc/georg_fib_100.call create mode 100644 gesamt_ppc/georg_fib_101.0 create mode 120000 gesamt_ppc/georg_fib_101.call create mode 100644 gesamt_ppc/georg_fib_101.instr create mode 100644 gesamt_ppc/georg_fib_102.0 create mode 120000 gesamt_ppc/georg_fib_102.call create mode 100644 gesamt_ppc/georg_fib_102.instr create mode 120000 gesamt_ppc/georg_fib_120.call create mode 100644 gesamt_ppc/georg_fib_121.0 create mode 120000 gesamt_ppc/georg_fib_121.call create mode 100644 gesamt_ppc/georg_fib_121.instr create mode 100644 gesamt_ppc/georg_fib_122.0 create mode 120000 gesamt_ppc/georg_fib_122.call create mode 100644 gesamt_ppc/georg_fib_122.instr create mode 100644 gesamt_ppc/intelli_00.0 create mode 100644 gesamt_ppc/intelli_00.call create mode 100644 gesamt_ppc/intelli_00.instr create mode 100644 gesamt_ppc/intelli_01.0 create mode 100644 gesamt_ppc/intelli_01.call create mode 100644 gesamt_ppc/intelli_01.instr create mode 100644 gesamt_ppc/intelli_02.0 create mode 100644 gesamt_ppc/intelli_02.call create mode 100644 gesamt_ppc/intelli_02.instr create mode 100644 gesamt_ppc/intelli_03.0 create mode 100644 gesamt_ppc/intelli_03.call create mode 100644 gesamt_ppc/intelli_03.instr create mode 100644 gesamt_ppc/lewurm_00.0 create mode 100644 gesamt_ppc/lewurm_00.call create mode 100644 gesamt_ppc/lewurm_00.instr create mode 100644 gesamt_ppc/lewurm_01.0 create mode 100644 gesamt_ppc/lewurm_01.call create mode 100644 gesamt_ppc/lewurm_01.instr create mode 100644 gesamt_ppc/lewurm_02.0 create mode 100644 gesamt_ppc/lewurm_02.call create mode 100644 gesamt_ppc/lewurm_02.instr create mode 100644 gesamt_ppc/lewurm_03.0 create mode 100644 gesamt_ppc/lewurm_03.call create mode 100644 gesamt_ppc/lewurm_03.instr create mode 100644 gesamt_ppc/lewurm_04.0 create mode 100644 gesamt_ppc/lewurm_04.call create mode 100644 gesamt_ppc/lewurm_04.instr create mode 100644 gesamt_ppc/lewurm_05.0 create mode 100644 gesamt_ppc/lewurm_05.call create mode 100644 gesamt_ppc/lewurm_05.instr create mode 100644 gesamt_ppc/lewurm_06.0 create mode 100644 gesamt_ppc/lewurm_06.call create mode 100644 gesamt_ppc/lewurm_06.instr create mode 100644 gesamt_ppc/lewurm_07.0 create mode 100644 gesamt_ppc/lewurm_07.call create mode 100644 gesamt_ppc/lewurm_07.instr create mode 100644 gesamt_ppc/lewurm_08.0 create mode 100644 gesamt_ppc/lewurm_08.call create mode 100644 gesamt_ppc/lewurm_08.instr create mode 100644 gesamt_ppc/lewurm_09.0 create mode 100644 gesamt_ppc/lewurm_09.call create mode 100644 gesamt_ppc/lewurm_09.instr create mode 100644 scripts/callingconvention.c create mode 100755 scripts/modlvatest_gesamt_ppc.sh create mode 100755 scripts/onetest_gesamt_ppc diff --git a/codeb/georg_fib_000.call b/codeb/georg_fib_000.call index e04b865..bc21f4e 100644 --- a/codeb/georg_fib_000.call +++ b/codeb/georg_fib_000.call @@ -1,2 +1,2 @@ -extern long fib(long); +extern int fib(int); RET(fib(-1)==-1 && fib(0)==0 && fib(1)==1 && fib(2)==1 && fib(3)==2 && fib(7)+fib(8)==fib(9)); diff --git a/codeb/georg_fib_020.call b/codeb/georg_fib_020.call index dbf1d12..200b29c 100644 --- a/codeb/georg_fib_020.call +++ b/codeb/georg_fib_020.call @@ -1,2 +1,2 @@ -extern long fib(long,long); +extern int fib(int,int); RET(fib(0,-1)==-1 && fib(0,0)==0 && fib(0,1)==1 && fib(0,2)==1 && fib(0,3)==2 && fib(0,7)+fib(0,8)==fib(0,9)); diff --git a/gesamt/codea_abgabe_aq.0 b/gesamt/codea_abgabe_aq.0 index 6f10108..f41a469 100644 --- a/gesamt/codea_abgabe_aq.0 +++ b/gesamt/codea_abgabe_aq.0 @@ -1,5 +1,5 @@ struct a b c end; method m(x) - return (this-8).c; + return (this-4).c; end; diff --git a/gesamt/codeb_abgabe_ba.call b/gesamt/codeb_abgabe_ba.call index 12cbab0..e3f3c99 100644 --- a/gesamt/codeb_abgabe_ba.call +++ b/gesamt/codeb_abgabe_ba.call @@ -1,2 +1,5 @@ extern long m(long,long); -RET(m(7,4)==6 && m(18,22)==-8); +int r1 = m(7,4); +int r2 = m(18,22); +printf("r1: %d\nr2: %d\n", r1, r2); +RET(r1==6 && r2==-8); diff --git a/gesamt/codeb_abgabe_bj.0 b/gesamt/codeb_abgabe_bj.0 index b49c7c8..427e7de 100644 --- a/gesamt/codeb_abgabe_bj.0 +++ b/gesamt/codeb_abgabe_bj.0 @@ -3,7 +3,7 @@ struct elem end; method vadd(v n) while 0 + +extern int call(void); + +#define CHECKNUM 0x1234567812345678 +long callchecking() +{ + long ret; + ret=call(); + return ret; +} diff --git a/scripts/callingconvention.o b/scripts/callingconvention.o index 2fe045a7bce87066090dd9e0fa947a5a7b3b466e..d11cb57fd04c0711000265ea991e7daaca9c7c38 100644 GIT binary patch literal 892 zcma)4Jxc>Y5S`0Ky{LtXRu*1F`~Y1NO(E&TPejt$Sa~@Q4JLPz+en0f0snx7_EzH0 z@+W9v9p7wr!gV_EcHYdJnPlho@$l@($vHGKhvvaE3HmZx#hmLjMczws@Y(Zn@6Qgc zoS?RMx!48w`asWhyYMSL&wbx5l3(kSPsjWFRe${;syBkzuc#fhy;WA_jUlByOrE`t zJLX3VdB<}|r4KC~)Zuk|=x>Czqh_FV)YYV}0v(X5rzxp0X|r8)?2 zNnx%Ev~D-*9UZ0S4*xxT6!IR%Z3AzhWI4OM<%<~(>fYg)1_}W8a~;R4Hg@6Ju7+-O zaxL2?-~oTtl~E%-pl03@6KkSX5esMO$?D=nJ52_IA4%G}xlAl|v&hMRWBC=hU}8<` z*ykh(`T_n1OagpA-pdTYd&M+F2{JZdfzcv~_*@8ejjG;BU$^gB|#czg;D5dyTYr4@uj3Bs9MLn6%0% z%=-mje2Z5yT`^vzbbMsjYuh4_t=rbDb;p|9MMrkT ze>0}7O);$;*Yx(5*elrhLBNj*ZU7G=ZN$??B5fqoMz>}3TE=k3m|Smp+WfrfMdPOa zlFnspbo6|(JLAr0?R;|395DNP`pmvFfy$U!TFrU(JgiN^gkilP7KC@{kJ zFktH5$?-SQkVH+3wz_xdp7Os(#*!ice;uvxsPiKhRsXKIKf}PwqSlu=Sx3J{_G4eh zNY^8G4Eu=c1o3}Q_$VaPB%J2L8oGbdR4rWf+VmlYn$E;!k>Hb{cSwEGcW45Rzdlt4 z0EohwW3Q}a^NUU){{a3U*+SlQSfQ9*EZsNzdxy^XytCvw%i!c2%q?dH=YX6-QF87%fd2lBAKK})H$^Wzf diff --git a/scripts/modlvatest_gesamt.sh b/scripts/modlvatest_gesamt.sh index 5df7c42..4fff543 100755 --- a/scripts/modlvatest_gesamt.sh +++ b/scripts/modlvatest_gesamt.sh @@ -6,11 +6,11 @@ PROGRAM=./$beispiel errnum=0 prgnum=0 -#LOC=. -LOC=/usr/ftp/pub/ubvl/test/$beispiel +LOC=~/test/scripts/ +#LOC=/usr/ftp/pub/ubvl/test/$beispiel LOC2=~/test/$beispiel -/usr/ftp/pub/ublu/test/accounttest || exit 1 +#/usr/ftp/pub/ublu/test/accounttest || exit 1 allow_null_glob_expansion=1 if [ ! -d ~/abgabe/$beispiel ]; then diff --git a/scripts/modlvatest_gesamt_ppc.sh b/scripts/modlvatest_gesamt_ppc.sh new file mode 100755 index 0000000..456bc4b --- /dev/null +++ b/scripts/modlvatest_gesamt_ppc.sh @@ -0,0 +1,152 @@ +#! /bin/bash + +beispiel=gesamt_ppc +PROGRAM=./$beispiel + +errnum=0 +prgnum=0 + +LOC=~/test/scripts/ +#LOC=/usr/ftp/pub/ubvl/test/$beispiel +LOC2=~/test/$beispiel + +#/usr/ftp/pub/ublu/test/accounttest || exit 1 +allow_null_glob_expansion=1 + +if [ ! -d ~/abgabe/$beispiel ]; then + echo "Fehler: Verzeichnis ~/abgabe/$beispiel existiert nicht." + exit 1 +else + cd ~/abgabe/$beispiel + echo 'Teste "make clean"' + make clean + /usr/ftp/pub/ubvl/test/cleantest + echo 'Teste "make"' + make +fi + +if test ! -x $PROGRAM +then + echo "Fehler: Kein Programm $PROGRAM" + exit 1 +fi +let prgnum=0 +for i in $LOC/*.0 $LOC2/*.0 +do + if [ -f $i ]; then + let prgnum=prgnum+1 + let errorfound=0 + echo "==========> Eingabe von $i:" + cat $i + echo + RESFILE=test${beispiel}out$$ + $PROGRAM <$i >$RESFILE + retval=$? + echo -n "Übersetzung: " + if test $retval -eq 0 + then + echo "Status korrekt" + else + echo "[Errot] Status=$retval. Erwartet: 0" + let errorfound=1 + fi + echo + echo "Ausgabe:" + if [ -f ~/test/scripts/clr.py ]; then + cat $RESFILE | ~/test/scripts/clr.py + else + cat $RESFILE + fi + mv -f $RESFILE $RESFILE.s + CALLFILE=${i%.*}.call + echo + if [ ! -f $CALLFILE ]; then + echo "Fehler: Datei $CALLFILE existiert nicht, kann Code nicht ausführen..." + exit 1 + else + echo "Übersetze und linke das Testprogramm:" + if cc -g -I. -DCALL=\"$CALLFILE\" $LOC/testmain.c $LOC/callingconvention.o $RESFILE.s; then + echo + echo "Rufe folgendes Codefragment auf:" + cat $CALLFILE + echo + ./a.out + retval=$? + # test callee saved registers + if [ "$retval" -ge 12 ] && [ "$retval" -le 15 ]; then + echo "[Error] Callee-saved register %r$retval modified." + let errorfound=1 + elif [ "$retval" -eq 11 ]; then + echo "[Error] Callee-saved register %rbx modified." + let errorfound=1 + elif [ "$retval" -eq 16 ]; then + echo "[Error] Callee-saved register %rbp modified." + let errorfound=1 + elif [ "$retval" -eq 30 ]; then + echo "[Error] Stack pointer %rsp modified." + let errorfound=1 + else + # test signals + test $retval -gt 127 + retsig=$? + test ${i##*.} = xin + expsig=$? + if test $retsig -eq $expsig; then + if test $retval -eq 1; then + echo "[Error] Das Ergebnis des Aufrufs ist falsch." + let errorfound=1 + elif test $retval -eq 0; then + echo "Das Ergebnis des Ausdrucks ist korrekt." + else + echo "[Error] Erzeugter Code verhaelt sich bzgl. Signalerzeugung anders als erwartet." + let errorfound=1 + fi + else + echo "[Error] Erzeugter Code verhaelt sich bezueglich Signalerzeugung anders als erwartet." + let errorfound=1 + echo "Rueckgabewert = $retval"; + fi + fi + echo + else + echo "[Error] Erzeugter Code konnte nicht assembliert und gelinkt werden." + let errorfound=1 + fi + fi + let errnum=errnum+errorfound + if [ 1 -eq $errorfound ]; then + rm *.s + rm *.out + exit 3; + fi + rm -f a.out $RESFILE $RESFILE.s + fi +done + +for i in $LOC/*.[123] $LOC2/*.[123] +do + if [ -f $i ]; then + let prgnum=prgnum+1 + echo "==========> Eingabe von $i:" + cat $i + echo + echo "Ausgabe:" + $PROGRAM <$i + retval=$? + if test $retval -eq ${i#*.} + then + echo "Status: korrekt" + else + echo "[Error] Status: $retval. Erwartet: ${i#*.}" + let errnum=errnum+1 + exit 3; + fi + echo +fi +done +let corrnum=prgnum-errnum +echo "Statistics: " +echo "===========" +echo " $prgnum Tests total" +echo " $corrnum Tests passed" +echo " $errnum Tests failed" diff --git a/scripts/onetest_gesamt b/scripts/onetest_gesamt index 676bd0e..dc33af2 100755 --- a/scripts/onetest_gesamt +++ b/scripts/onetest_gesamt @@ -5,7 +5,8 @@ beispiel=gesamt PROGRAM=./$beispiel #LOC=. -LOC=/usr/ftp/pub/ubvl/test/$beispiel +#LOC=/usr/ftp/pub/ubvl/test/$beispiel +LOC=~/test/scripts allow_null_glob_expansion=1 diff --git a/scripts/onetest_gesamt_ppc b/scripts/onetest_gesamt_ppc new file mode 100755 index 0000000..8d35dd7 --- /dev/null +++ b/scripts/onetest_gesamt_ppc @@ -0,0 +1,116 @@ +#!/bin/bash + +i=$1 +beispiel=gesamt_ppc +PROGRAM=./$beispiel + +#LOC=. +#LOC=/usr/ftp/pub/ubvl/test/$beispiel +LOC=~/test/scripts + +allow_null_glob_expansion=1 + +if [ ! -d ~/abgabe/$beispiel ]; then + echo "Fehler: Verzeichnis ~/abgabe/$beispiel existiert nicht." + exit 1 +else + cd ~/abgabe/$beispiel + echo 'Teste "make"' + make +fi + +if test ! -x $PROGRAM +then + echo "Fehler: Kein Programm $PROGRAM" + exit 1 +fi +let prgnum=0 +#for i in $LOC/*.0 $LOC2/*.0 +if [ -f $i ]; then + let prgnum=prgnum+1 + let errorfound=0 + echo "==========> Eingabe von $i:" + cat $i + echo + RESFILE=test${beispiel}out$$ + $PROGRAM <$i >$RESFILE + retval=$? + echo -n "Übersetzung: " + if test $retval -eq 0 + then + echo "Status korrekt" + else + echo "[Errot] Status=$retval. Erwartet: 0" + let errorfound=1 + fi + echo + echo "Ausgabe:" + if [ -f ~/test/scripts/clr.py ]; then + cat $RESFILE | ~/test/scripts/clr.py + else + cat $RESFILE + fi + mv -f $RESFILE $RESFILE.s + CALLFILE=${i%.*}.call + echo + if [ ! -f $CALLFILE ]; then + echo "Fehler: Datei $CALLFILE existiert nicht, kann Code nicht ausführen..." + exit 1 + else + echo "Übersetze und linke das Testprogramm:" + if cc -g -I. -DCALL=\"$CALLFILE\" $LOC/testmain.c $LOC/callingconvention.o $RESFILE.s; then + echo + echo "Rufe folgendes Codefragment auf:" + cat $CALLFILE + echo + ./a.out + retval=$? + # test callee saved registers + if [ "$retval" -ge 12 ] && [ "$retval" -le 15 ]; then + echo "[Error] Callee-saved register %r$retval modified." + let errorfound=1 + elif [ "$retval" -eq 11 ]; then + echo "[Error] Callee-saved register %rbx modified." + let errorfound=1 + elif [ "$retval" -eq 16 ]; then + echo "[Error] Callee-saved register %rbp modified." + let errorfound=1 + elif [ "$retval" -eq 30 ]; then + echo "[Error] Stack pointer %rsp modified." + let errorfound=1 + else + # test signals + test $retval -gt 127 + retsig=$? + test ${i##*.} = xin + expsig=$? + if test $retsig -eq $expsig; then + if test $retval -eq 1; then + echo "[Error] Das Ergebnis des Aufrufs ist falsch." + let errorfound=1 + elif test $retval -eq 0; then + echo "Das Ergebnis des Ausdrucks ist korrekt." + else + echo "[Error] Erzeugter Code verhaelt sich bzgl. Signalerzeugung anders als erwartet." + let errorfound=1 + fi + else + echo "[Error] Erzeugter Code verhaelt sich bezueglich Signalerzeugung anders als erwartet." + let errorfound=1 + echo "Rueckgabewert = $retval"; + fi + fi + echo + else + echo "[Error] Erzeugter Code konnte nicht assembliert und gelinkt werden." + let errorfound=1 + fi + fi + let errnum=errnum+errorfound + if [ 1 -eq $errorfound ]; then + rm *.s + rm *.out + exit 3; + fi + rm -f a.out $RESFILE $RESFILE.s +fi -- 2.25.1