[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug gas/336] gas cannot assemble pdtlb,l instruction
From: |
Nick Clifton |
Subject: |
Re: [Bug gas/336] gas cannot assemble pdtlb,l instruction |
Date: |
Fri, 27 Aug 2004 17:25:53 +0100 |
User-agent: |
Mozilla Thunderbird 0.7.3 (X11/20040803) |
Hi Randolph,
foo:
pdtlb,l 0(%r28)
I do not believe that this instruction is valid. The "x" field of the
instruction needs to be a register name.
According to the "PA-RISC 2.0 Architecture" document, chapter 7, page
7-106 the format for the instruction is:
PDTLB,scope,cmplt x(s,b)
And the operation is defined as:
if (priv != 0)
privileged_operation_trap;
else {
space space_select(s,GR[b],INDEXED);
switch (cmplt) {
case M: offset GR[b];
GR[b] GR[b] + GR[x];
break;
default: offset GR[b] + GR[x];
break;
}
page_size 4096 << (2 * GR[b]{60..63});
for (i 0; i < page_size/4096; i++) {
if (entry DTLB_search(space, offset + i*4096))
DTLB_purge_local(entry);
}
if (scope != L)
DTLB_purge_broadcast(space,offset,page_size);
}
Note how GR[x] is used regardless of the value of "cmplt".
The tests in the GAS testsuite also make this clear. The following
instructions are all valid:
pdtlb %r4(%sr0,%r5)
pdtlb,m %r4(%sr0,%r5)
pdtlb,l %r4(%sr0,%r5)
pdtlb,l,m %r4(%sr0,%r5)
pitlb,l %r4(%sr4,%r5)
pitlb,l,m %r4(%sr4,%r5)
Cheers
Nick
- [Bug gas/336] New: gas cannot assemble pdtlb,l instruction, tausq at debian dot org, 2004/08/17
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, nickc at redhat dot com, 2004/08/27
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, randolph at tausq dot org, 2004/08/27
- Re: [Bug gas/336] gas cannot assemble pdtlb,l instruction,
Nick Clifton <=
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, nickc at redhat dot com, 2004/08/27
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, randolph at tausq dot org, 2004/08/27
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, randolph at tausq dot org, 2004/08/27
- [Bug gas/336] gas cannot assemble pdtlb,l instruction, nickc at redhat dot com, 2004/08/31