> Some other interesting instructions in this table:
>
> BSG     - Branch in Subspace Group
> EREG    - Extract stacked REGisters (32 bits)
> EREGG   - Extract stacked REGisters Grande (64-bits)
> ESTA    - Extract stacked STAte
> LPTEA   - Load Page Table Entry Address
> MSTA    - Modify stacked STAte
> SSAR    - Set Secondary ASN
> SSAIR   - Set Secondary ASN with Instance
> STRAG   - Store Real Address  p
> TAR     - Test Access         p
> TPROT   - Test PROTection     p
>
>    ('interesting' in the sense they are not
>     semiprivileged and the first eight are
>     not privileged either, but they are
>     described in the chapter on Control
>     Instructions: so are they 'general'
>     instructions? I think not, but it's hard
>     to say.)
>
>
> My focus: are these first eight instructions useful
> for applications programmers?

I have definitely used EREG and EREGG in application programs.  If you're 
calling a subroutine (or entering a subroutine) with BAKR -- not necessarily a 
good idea, but sometimes useful -- then it can definitely be helpful to modify 
registers, and still be able to get the calling code's register values back 
again.

Haven't used ESTA and MSTA, but I know they're there if I ever need them.  
Maybe as a last-ditch way to store a register pair temporarily when there 
really isn't anything else easily available.

By the way, you show TAR as privileged, above, but it doesn't appear to be so.

Cheers,

Allen Gainsford
Info Developer, Banking Shared Services
HP Enterprise Services (South Pacific)
Office +64-4-819-5236  |  Fax +64-4-819-5955  |  Email [email protected]

Reply via email to