Browse Prior Art Database

CPU ID Determination Algorithm in Assembling Process

IP.com Disclosure Number: IPCOM000113714D
Original Publication Date: 1994-Sep-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 4 page(s) / 112K

Publishing Venue

IBM

Related People

Chibib, AC: AUTHOR [+4]

Abstract

Disclosed is an algorithm to determining the CPU ID of an object code according to the target environment value and the source program domain.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

CPU ID Determination Algorithm in Assembling Process

      Disclosed is an algorithm to determining the CPU ID of an
object code according to the target environment value  and the source
program domain.

      A CPU ID in the XCOFF file indicates the least required target
environment  for an object code to successfully execute.  Although
the assembly mode flag '-m' or the ".machine" pseudo-op  indicates
the intended target environment, it is not ensured that it is the
least requirement since the source program domain may smaller than it
so that the CPU ID can be further reduced.  An argorithm has to be
built to create an accurate CPU ID.

      A target environment (also called assembly mode in AIX* V4.1)
is either a hardware architecture or a processor implementation,
which defines a complete set of instructions.  A source program
domain is defined by the instructions used within the program and is
a subset  of instructions defined in either a hardware architecture
or a processor implementation.  In AIX V4.1 the following target
environment values have been defined:
  com -- POWER*/PowerPC* intersection instructions that are available
  to both architectures.
  ppc -- Common PowerPC instructions that are available in all the
  PowerPC implementations.
  pwr -- RIOS/1 instructions that are available in RIOS/1
  implementation only.
  pwr2 -- RIOS/2 instrucitons that are available in RIOS/2
  implementation only.
  601 -- 601 instructions that are available in PowerPC 601
  implemetation only.
  any -- instructions that are valid in any architecture or
  implementation.

The target environment values have the following logical
relationship:
  pwr2   is a superset of   pwr    is a superset of   com
  ppc    is a superset of   com
  601    is a superset of   com
  any    is a superset of   each of above

      There is no relationship among the POWER category (i.e., pwr,
pwr2 and com) and the PowerPC category (i.e., com.  ppc, and 601)
except 'com' mode because there are certain POWER instructions that
are not implemented in PowerPC and certain PowerPC instructions that
are not implemented in POWER.  There is no relationship between "ppc"
and "601" because certain PowerPC instructions are not supported in
"601".  Certain 601 instructions are not conformed to the PowerPC
architecture.  These instructions usually construct the error/warning
conditions.

In AIX V4.1 the following source program domains have been defined:
  com -- POWER/PowerPC intersection instructions.  It is the subset
of
  the com target environment.  It is a proper subset of any other
  target environment.
  rios/1 & 601 -- RIOS/1 unique instructions that are supported in
601.
  A subset of "pwr" and "601" intersection.
  rios/1 & !601 -- RIOS/1 unique instructions that are not...