Stack pointer and memory access alignment control
First Claim
Patent Images
1. Apparatus for processing data comprising:
- processing circuitry responsive to program instructions to perform data processing operations;
a stack pointer register coupled to said processing circuitry and configured to store a stack pointer value indicative of an address within a memory of a stack data store;
stack alignment checking circuitry coupled to said processing circuitry and to said stack pointer register and configured to respond to a program instruction specifying a memory access to said stack data store at an address specified by said stack pointer value to detect if said stack pointer value matches a predetermined stack alignment condition;
alignment checking control circuitry coupled to said stack alignment checking circuitry and responsive to a stack configuration parameter to selectively disable said stack alignment checking circuitry independently of further alignment checking performed upon memory accesses.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system 2 includes a stack pointer register 26, 28, 30, 32 storing a stack pointer value for use in stack access operations to a stack data store 44, 46, 48, 50. Stack alignment checking circuitry 36 which is selectively disabled may be provided to check memory address alignment of the stack pointer value associated with a stack memory access. The action of the stack alignment checking circuitry 36 is independent of any further other alignment checking performed in respect of all memory accesses. Thus, general alignment checking circuitry 38 may be provided and independently selectively disabled in respect of any memory access.
16 Citations
20 Claims
-
1. Apparatus for processing data comprising:
-
processing circuitry responsive to program instructions to perform data processing operations; a stack pointer register coupled to said processing circuitry and configured to store a stack pointer value indicative of an address within a memory of a stack data store; stack alignment checking circuitry coupled to said processing circuitry and to said stack pointer register and configured to respond to a program instruction specifying a memory access to said stack data store at an address specified by said stack pointer value to detect if said stack pointer value matches a predetermined stack alignment condition; alignment checking control circuitry coupled to said stack alignment checking circuitry and responsive to a stack configuration parameter to selectively disable said stack alignment checking circuitry independently of further alignment checking performed upon memory accesses. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. Apparatus for processing data comprising:
-
processing means for performing data processing operations in response to program instructions; stack pointer means for storing a stack pointer value, said stack pointer means being coupled to said processing means and said stack pointer value being indicative of an address within a memory of a stack data store; stack alignment checking means for checking alignment, said stack alignment checking means being coupled to said processing means and to said stack pointer means and configured to respond to a program instruction specifying a memory access to said stack data store at an address specified by said stack pointer value to detect if said stack pointer value matches a predetermined stack alignment condition; alignment checking control means for controlling alignment checking, said alignment checking control means being coupled to said stack alignment checking means and being responsive to a stack configuration parameter to selectively disable said stack alignment checking means independently of further alignment checking performed upon memory accesses.
-
-
11. A method of processing data comprising the steps of:
-
performing data processing operations in response to program instructions; storing within a stack pointer register a stack pointer value indicative of an address within a memory of a stack data store; in response to a program instruction specifying a memory access to said stack data store at an address specified by said stack pointer value, detecting if said stack pointer value matches a predetermined stack alignment condition; in response to a stack configuration parameter, selectively omitting said detecting step independently of further alignment checking performed upon memory accesses. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification