1. An apparatus for detecting illegal memory access by a software function, comprising: a register operable to store a reference to a base address of a map table, wherein the map table comprises an object address and a size value of a memory operation of the software function, wherein a legal memory range for the memory operation is computed based on the object address and the size value; a cache operable to store the map table; and a processor operable to execute a memory access involving a value pair comprising a first value and a second value for a declared pointer within the software function, wherein the first value comprises a current address of a memory operation, the second value comprises a reference to the object address and the size value of the map table, and wherein the declared pointer is initialized with a memory address of the value pair, wherein the processor is further operable to perform bound checking based on the legal memory range and the current address, and to signal an interrupt responsive to a memory access being outside of the legal memory range.