@@ -978,16 +978,7 @@ static inline int is_simple_type(struct symbol *type)
return 0;
}
-static inline int is_simple_var(struct symbol *var)
-{
- if (!is_simple_type(var))
- return 0;
#define MOD_NONREG (MOD_STATIC|MOD_NONLOCAL|MOD_ADDRESSABLE|MOD_VOLATILE)
- if (var->ctype.modifiers & MOD_NONREG)
- return 0;
- return 1;
-}
-
static inline struct symbol *simple_access(struct access_data *ad)
{
pseudo_t addr = ad->address;
@@ -996,7 +987,9 @@ static inline struct symbol *simple_access(struct access_data *ad)
if (addr->type != PSEUDO_SYM)
return NULL;
sym = addr->sym;
- if (!is_simple_var(sym))
+ if (sym->ctype.modifiers & MOD_NONREG)
+ return NULL;
+ if (!is_simple_type(sym))
return NULL;
return sym;
}