US 12,204,460 B2
Safe execution of programs that make out-of-bounds references
Tong Chen, Yorktown Heights, NY (US); Alper Buyuktosunoglu, White Plains, NY (US); Richard H. Boivie, Monroe, CT (US); and Gururaj Saileshwar, Atlanta, GA (US)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on Apr. 21, 2021, as Appl. No. 17/236,748.
Prior Publication US 2022/0342830 A1, Oct. 27, 2022
Int. Cl. G06F 12/14 (2006.01)
CPC G06F 12/1441 (2013.01) [G06F 12/145 (2013.01); G06F 2212/1052 (2013.01)] 26 Claims
OG exemplary drawing
 
1. A method of protecting a program from making out of bounds memory references, the method comprising:
determining whether an instruction makes out of bound references where the instruction that loads data from or stores data to a buffer refers to addresses that are outside the bounds of the buffer; and
responsive to the determining that the instruction refers to addresses that are partially out of bounds, changing an execution of the load or the store comprising modifying a length of data specified in the instruction buffer by mapping bound references accessed via a pointer register;
wherein the pointer register comprises at least two fields and an extra copy of an index value in an address is stored in the pointer register; and
wherein the at least two fields comprises at least one field for the extra copy of the index value.