The present invention provides a shared instruction cache for multiple
processors. In one embodiment, an apparatus for a microprocessor includes
a shared instruction cache for a first processor and a second processor,
and a first register index base for the first processor and a second
register index base for the second processor. The apparatus also includes
a first memory address base for the first processor and a second memory
address base for the second processor. This embodiment allows for
segmentation of register files and main memory based on which processor is
executing a particular instruction (e.g., an instruction that involves a
register access and a memory access).