Patent ID: 7870314

Claim:
A method for implementing store buffer allocation for variable length store data operations, comprising: receiving a store address request and at least one store data request in response to an instruction to perform a store operation; saving an address range for the store address request; stepping through data operations for each of the store data requests and the address range for the store address request to determine alignment and data steering information used to select a storage buffer destination for the data in each of the store data requests; determining availability of the storage buffer by: maintaining a reservation list for each storage buffer; maintaining a count of the number of available storage buffer entries for each storage buffer; updating the reservation list to reflect a reservation acceptance for designated available storage buffer entries, the updating resulting in a decrease in the count of available storage buffer entries; and clearing storage buffer entries upon completion of the processing of store data operations; and reserving the selected storage buffer when the number of available storage buffer entries meets or exceeds the number of storage buffer entries required for the data.