Chapter 7: Intermediate representation and symbol table

How to store large local data structures

. Requires large space in local frames and therefore large offsets

. If large object is put near the boundary other objects require large offset either from fp (if put near beginning) or sp (if put near end)

. Allocate another base register to access large objects

. Allocate space in the middle or elsewhere; store pointer to these locations from at a small offset from fp

. Requires extra loads

Large local data structures require large space in local frames and therefore large offsets. As told in the previous slide's notes, if large objects are put near the boundary then the other objects require large offset. You can either allocate another base register to access large objects or you can allocate space in the middle or elsewhere and then store pointers to these locations starting from at a small offset from the frame pointer, fp.