isa_traits.hh (4587:2c9a2534a489) isa_traits.hh (4772:f08370a81812)
1/*
2 * Copyright (c) 2007 The Hewlett-Packard Development Company
3 * All rights reserved.
4 *
5 * Redistribution and use of this software in source and binary forms,
6 * with or without modification, are permitted provided that the
7 * following conditions are met:
8 *

--- 85 unchanged lines hidden (view full) ---

94 // semantically meaningful register indices
95 //There is no such register in X86
96 const int ZeroReg = NUM_INTREGS;
97 const int StackPointerReg = INTREG_RSP;
98 //X86 doesn't seem to have a link register
99 const int ReturnAddressReg = 0;
100 const int ReturnValueReg = INTREG_RAX;
101 const int FramePointerReg = INTREG_RBP;
1/*
2 * Copyright (c) 2007 The Hewlett-Packard Development Company
3 * All rights reserved.
4 *
5 * Redistribution and use of this software in source and binary forms,
6 * with or without modification, are permitted provided that the
7 * following conditions are met:
8 *

--- 85 unchanged lines hidden (view full) ---

94 // semantically meaningful register indices
95 //There is no such register in X86
96 const int ZeroReg = NUM_INTREGS;
97 const int StackPointerReg = INTREG_RSP;
98 //X86 doesn't seem to have a link register
99 const int ReturnAddressReg = 0;
100 const int ReturnValueReg = INTREG_RAX;
101 const int FramePointerReg = INTREG_RBP;
102 const int ArgumentReg0 = INTREG_RDI;
103 const int ArgumentReg1 = INTREG_RSI;
104 const int ArgumentReg2 = INTREG_RDX;
105 const int ArgumentReg3 = INTREG_RCX;
106 const int ArgumentReg4 = INTREG_R8W;
107 const int ArgumentReg5 = INTREG_R9W;
102 const int ArgumentReg[] = {
103 INTREG_RDI,
104 INTREG_RSI,
105 INTREG_RDX,
106 //This argument register is r10 for syscalls and rcx for C.
107 INTREG_R10W,
108 //INTREG_RCX,
109 INTREG_R8W,
110 INTREG_R9W
111 };
112 const int NumArgumentRegs = sizeof(ArgumentReg) / sizeof(const int);
108
109 // Some OS syscalls use a second register (rdx) to return a second
110 // value
111 const int SyscallPseudoReturnReg = INTREG_RDX;
112
113 //XXX These numbers are bogus
114 const int MaxInstSrcRegs = 10;
115 const int MaxInstDestRegs = 10;

--- 14 unchanged lines hidden ---
113
114 // Some OS syscalls use a second register (rdx) to return a second
115 // value
116 const int SyscallPseudoReturnReg = INTREG_RDX;
117
118 //XXX These numbers are bogus
119 const int MaxInstSrcRegs = 10;
120 const int MaxInstDestRegs = 10;

--- 14 unchanged lines hidden ---