| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- program t28;
- var
- g : integer ;
- unused : integer ;
- (* Seventy parameters. p63 and p70 sit at +128 and +142, the first offsets
- an 8-bit displacement cannot represent, so their accesses must use the
- 4-byte mod=10 form -- that is what check_framedisp.py asserts.
- A call caps at 16 arguments, so p17..p70 are never passed and reading
- them returns stack garbage. `unused' takes that sum and is never
- printed: the point of the fixture is the ENCODING, and the printed
- value must stay deterministic. Do not read this as a claim that a
- 70-argument call works. *)
- procedure far (p1 : integer,
- p2 : integer,
- p3 : integer,
- p4 : integer,
- p5 : integer,
- p6 : integer,
- p7 : integer,
- p8 : integer,
- p9 : integer,
- p10 : integer,
- p11 : integer,
- p12 : integer,
- p13 : integer,
- p14 : integer,
- p15 : integer,
- p16 : integer,
- p17 : integer,
- p18 : integer,
- p19 : integer,
- p20 : integer,
- p21 : integer,
- p22 : integer,
- p23 : integer,
- p24 : integer,
- p25 : integer,
- p26 : integer,
- p27 : integer,
- p28 : integer,
- p29 : integer,
- p30 : integer,
- p31 : integer,
- p32 : integer,
- p33 : integer,
- p34 : integer,
- p35 : integer,
- p36 : integer,
- p37 : integer,
- p38 : integer,
- p39 : integer,
- p40 : integer,
- p41 : integer,
- p42 : integer,
- p43 : integer,
- p44 : integer,
- p45 : integer,
- p46 : integer,
- p47 : integer,
- p48 : integer,
- p49 : integer,
- p50 : integer,
- p51 : integer,
- p52 : integer,
- p53 : integer,
- p54 : integer,
- p55 : integer,
- p56 : integer,
- p57 : integer,
- p58 : integer,
- p59 : integer,
- p60 : integer,
- p61 : integer,
- p62 : integer,
- p63 : integer,
- p64 : integer,
- p65 : integer,
- p66 : integer,
- p67 : integer,
- p68 : integer,
- p69 : integer,
- p70 : integer) ;
- begin
- g := p16 + p1 ;
- unused := p63 + p70
- end ;
- begin
- far (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16) ;
- writeln (g)
- end.
|