summaryrefslogtreecommitdiff
path: root/tests/tbs/tb0319.pp
blob: 6192d020005467761ae0e9561c522771a23d1d6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{ %CPU=i386 }
{$asmmode att}

const
  Count=100;

type
  trec=record
    a,b,c : longint;
  end;


var
  r : trec;
begin
  asm
    leal r,%edi
    leal r,%esi
    movl %es:46(%edi),%eax
    movl 2+trec.b(%esi),%eax
    movl $1,%ebx
    movl trec.b(%esi,%ebx,(2*4)),%eax
    movl r(,%ebx,(2*4)),%eax
    xorl %esi,%esi
    movl r.c(,%esi,(2*4)),%eax
    movl Count,%eax
    movl Count*100,%eax
    movl trec.b+2,%eax
    leal r,%esi
    movl trec.b+2(%esi),%eax
{$ifdef go32v2}
    movl %fs:(0x46c),%eax
{$endif}
  end;
end.