O3CPU.py (10331:ed05298e8566) | O3CPU.py (10338:8bee5f4edb92) |
---|---|
1# Copyright (c) 2005-2007 The Regents of The University of Michigan 2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: redistributions of source code must retain the above copyright 7# notice, this list of conditions and the following disclaimer; 8# redistributions in binary form must reproduce the above copyright --- 102 unchanged lines hidden (view full) --- 111 112 numRobs = Param.Unsigned(1, "Number of Reorder Buffers"); 113 114 numPhysIntRegs = Param.Unsigned(256, "Number of physical integer registers") 115 numPhysFloatRegs = Param.Unsigned(256, "Number of physical floating point " 116 "registers") 117 # most ISAs don't use condition-code regs, so default is 0 118 _defaultNumPhysCCRegs = 0 | 1# Copyright (c) 2005-2007 The Regents of The University of Michigan 2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: redistributions of source code must retain the above copyright 7# notice, this list of conditions and the following disclaimer; 8# redistributions in binary form must reproduce the above copyright --- 102 unchanged lines hidden (view full) --- 111 112 numRobs = Param.Unsigned(1, "Number of Reorder Buffers"); 113 114 numPhysIntRegs = Param.Unsigned(256, "Number of physical integer registers") 115 numPhysFloatRegs = Param.Unsigned(256, "Number of physical floating point " 116 "registers") 117 # most ISAs don't use condition-code regs, so default is 0 118 _defaultNumPhysCCRegs = 0 |
119 if buildEnv['TARGET_ISA'] == 'x86': | 119 if buildEnv['TARGET_ISA'] in ('arm','x86'): |
120 # For x86, each CC reg is used to hold only a subset of the 121 # flags, so we need 4-5 times the number of CC regs as 122 # physical integer regs to be sure we don't run out. In 123 # typical real machines, CC regs are not explicitly renamed 124 # (it's a side effect of int reg renaming), so they should 125 # never be the bottleneck here. 126 _defaultNumPhysCCRegs = Self.numPhysIntRegs * 5 127 numPhysCCRegs = Param.Unsigned(_defaultNumPhysCCRegs, --- 35 unchanged lines hidden --- | 120 # For x86, each CC reg is used to hold only a subset of the 121 # flags, so we need 4-5 times the number of CC regs as 122 # physical integer regs to be sure we don't run out. In 123 # typical real machines, CC regs are not explicitly renamed 124 # (it's a side effect of int reg renaming), so they should 125 # never be the bottleneck here. 126 _defaultNumPhysCCRegs = Self.numPhysIntRegs * 5 127 numPhysCCRegs = Param.Unsigned(_defaultNumPhysCCRegs, --- 35 unchanged lines hidden --- |