small structs arguments and return values should not be passed in registers