Alien-LibJIT
view release on metacpan or search on metacpan
libjit/attic/jit-gen-alpha.h view on Meta::CPAN
/*
* jit-gen-alpha.h - Code generation macros for the alpha processor.
*
* Copyright (C) 2006 Southern Storm Software, Pty Ltd.
*
* This file is part of the libjit library.
*
* The libjit library is free software: you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
* as published by the Free Software Foundation, either version 2.1 of
* the License, or (at your option) any later version.
*
* The libjit library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with the libjit library. If not, see
* <http://www.gnu.org/licenses/>.
*/
#ifndef _JIT_GEN_ALPHA_H
#define _JIT_GEN_ALPHA_H
#include "jit-rules.h"
#ifdef __cplusplus
extern "C" {
#endif
/*
* enumerate the 32 integer registers.
*
* See JIT_REG_INFO in jit-rules-alpha.h for details about registers
*/
typedef enum {
ALPHA_R0 = 0, ALPHA_V0 = ALPHA_R0, /* Function result */
ALPHA_R1 = 1, ALPHA_T0 = ALPHA_R1, /* Temp registers */
ALPHA_R2 = 2, ALPHA_T1 = ALPHA_R2,
ALPHA_R3 = 3, ALPHA_T2 = ALPHA_R3,
ALPHA_R4 = 4, ALPHA_T3 = ALPHA_R4,
ALPHA_R5 = 5, ALPHA_T4 = ALPHA_R5,
ALPHA_R6 = 6, ALPHA_T5 = ALPHA_R6,
ALPHA_R7 = 7, ALPHA_T6 = ALPHA_R7,
ALPHA_R8 = 8, ALPHA_T7 = ALPHA_R8,
ALPHA_R9 = 9, ALPHA_S0 = ALPHA_R9, /* Saved registers */
ALPHA_R10 = 10, ALPHA_S1 = ALPHA_R10,
ALPHA_R11 = 11, ALPHA_S2 = ALPHA_R11,
ALPHA_R12 = 12, ALPHA_S3 = ALPHA_R12,
ALPHA_R13 = 13, ALPHA_S4 = ALPHA_R13,
ALPHA_R14 = 14, ALPHA_S5 = ALPHA_R14,
ALPHA_R15 = 15, ALPHA_S6 = ALPHA_R15, /* ALPHA_R15 can hold either a saved value */
ALPHA_FP = ALPHA_R15, /* or the frame pointer */
ALPHA_R16 = 16, ALPHA_A0 = ALPHA_R16, /* First 6 arguments */
ALPHA_R17 = 17, ALPHA_A1 = ALPHA_R17,
ALPHA_R18 = 18, ALPHA_A2 = ALPHA_R18,
ALPHA_R19 = 19, ALPHA_A3 = ALPHA_R19,
( run in 0.345 second using v1.01-cache-2.11-cpan-5b529ec07f3 )