> Sure, but the modifier is not meant to force something into memory, > especially when it is already in an register. Remember, we are only > talking of structures here, and we only want to access one member. > > It is more the other way round: > It says: "You do not have to load the value in a register, if it is already > in memory I'm happy"
EXPAND_MEMORY means we are interested in a memory result, even if the memory is constant and we could have propagated a constant value. */ We definitely want to propagate constant values here, look at the code below. And it already lists explicit cases where we really need to splill to memory. -- Eric Botcazou