z900/z800 archlevel(5)
z990/z890 archlevel(6)

On Sat, Nov 28, 2015 at 5:17 PM, Charles Mills <charl...@mcn.org> wrote:
> Wow! Thanks!
>
> And all written in S/360 assembler! Will run on Connor's z890!
>
> Charles
>
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On 
> Behalf Of Kirk Wolf
> Sent: Saturday, November 28, 2015 3:12 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Straightforward way to determine hardware architecture level?
>
> Here's a brute force assembler translation of my quick decoding of doc for 
> "ARCHLEVEL" in the z/OS V2R2 C/C++ UG.
>
> NB:  It would be great if someone could get IBM to confirm that these are the 
> correct FACL bits described by the ARCHLEVEL doc.
> It returns "9" as expected on the z196 machine that I am using, so it must be 
> right ;-)
>
>          TITLE '-- Entry / prologue'
> *--------------------------------------------------------------------*
> *    Checks the IBM z/OS PSAE facility bits to return the highest
> *    ARCHLEVEL that would be supported by the IBM C/C++ compiler
> *    on the current machine.
> *
> *    Call with standard system linkage; RC=R15 is the ARCH level.
> *
> *    References:
> *         IBM C/C++ User's Guide
> *         Principles of Operation
> *         IHAFACL macro comments
> *
> *    Version:  November 28, 2015
> *
> *    Please report bugs or enhancements to author:
> *        Kirk Wolf
> *        Dovetailed Technologies
> *        k...@dovetail.com
> *
> *    This is free and unencumbered software released into the
> *    public domain.  Anyone is free to copy, modify, publish,
> *    use, compile, sell or distribute this software for any purpose.
> *
> *    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> *    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
> *    OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> *    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
> *    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
> *    CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
> *    WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> *
> *--------------------------------------------------------------------*
> CHKARCH  CSECT
> CHKARCH  AMODE 31
> CHKARCH  RMODE ANY
>          USING *,R15
>          SAVE  (14,12),,'CHKARCH &SYSDATE. &SYSTIME.'
>          LR    R12,R15
>          DROP  R15         drop temporary base reg
>          USING CHKARCH,R12  establish our base register
>
>          TITLE '-- Mainline'
>          USING FLCESAME,0         PSA/PSAE is at location 0
>          USING FaclData,FlceFacilitiesList
>
>          LA    R15,0       Default ARCH(0) - should not occur
>
> *  Test ARCH(5)
>          TM    FaclByte0,FaclZArchInstalled
>          BNO   EXIT
>          LA    R15,5       ARCH(5)
>
> *  Test ARCH(6)
> *  long-displacement facility
>          TM    FaclByte2,FaclLongDisplacement
>          BNO   EXIT
>          LA    R15,6       ARCH(6)
>
> *  Test ARCH(7) (z9)
> *  long-displacement facility
>          TM    FaclByte2,FaclExtendedImmediate
>          BNO   EXIT
>          LA    R15,7       ARCH(7)
>
> *  Test ARCH(8) (z10)
> *  extended-immediate facility,
> *  DFP facility
>          TM    FaclByte4,FaclGeneralInstExtension
>          BNO   EXIT
>          TM    FaclByte5,FaclDFPF
>          BNO   EXIT
>          LA    R15,8       ARCH(8)
>
> *  Test ARCH(9) (z196)
> *  high-word facility,
> *  interlocked-access facility,
> *  load/store-on-condition facility,
> *  distinct-operands-facility,
> *  population-count facility.
>          TM    FaclByte5,FaclHighWord
>          BNO   EXIT
>          TM    FaclByte5,FaclLoadStoreOnCondition
>          BNO   EXIT
>          TM    FaclByte5,FaclDistinctOperands
>          BNO   EXIT
>          TM    FaclByte5,FaclPopulationCount
>          BNO   EXIT
>          LA    R15,9       ARCH(9)
>
> *  Test ARCH(10) (xc12)
> *  execution-hint facility,
> *  load-and-trap facility,
> *  miscellaneous-instruction-extension facility,
> *  transactional-execution facility.
>          TM    FaclByte6,FaclExecutionHint
>          BNO   EXIT
>          TM    FaclByte6,FaclLoadAndTrap
>          BNO   EXIT
>          TM    FaclByte6,FaclMiscInstExt
>          BNO   EXIT
>          TM    FaclByte9,FaclTransactionalExecution
>          BNO   EXIT
>          LA    R15,10       ARCH(10)
>
> *  Test ARCH(11) (z13)
> *  vector facility,  -- should we also check CVTVEF ??
> *  decimal floating point packed conversion facility,
> *  load/store-on-condition facility,
> *  conditional-transaction-end facility
>          TM    FaclByte16,Facl_VectorExtensionFacility
>          BNO   EXIT
>          TM    FaclByte10,FACL_DFPPackedConversion
>          BNO   EXIT
>          TM    FaclByte6,FACL_LoadStoreOnCond2
>          BNO   EXIT
>          TM    FaclByte6,FACL_CTEND
>          BNO   EXIT
>          LA    R15,11       ARCH(11)
>
>          TITLE '-- Exit / epilogue'
> EXIT     DS    0H
>          L     14,12(0,13) restore return address
>          RETURN (0,12),RC=(15),T
>
>          TITLE '-- Constants / DSECTS'
>          IHAPSAE ,
>          IHAFACL ,
>          YREGS ,
>          END   CHKARCH
>
>
> Kirk Wolf
> Dovetailed Technologies
> http://dovetail.com
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
> lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



-- 
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to