diff options
Diffstat (limited to 'gcc/gimple.c')
-rw-r--r-- | gcc/gimple.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/gimple.c b/gcc/gimple.c index 4fc836236ff..bb028645567 100644 --- a/gcc/gimple.c +++ b/gcc/gimple.c @@ -2786,7 +2786,17 @@ bool is_gimple_reg (tree t) { if (TREE_CODE (t) == SSA_NAME) - t = SSA_NAME_VAR (t); + { + t = SSA_NAME_VAR (t); + if (TREE_CODE (t) == VAR_DECL + && VAR_DECL_IS_VIRTUAL_OPERAND (t)) + return false; + return true; + } + + if (TREE_CODE (t) == VAR_DECL + && VAR_DECL_IS_VIRTUAL_OPERAND (t)) + return false; if (!is_gimple_variable (t)) return false; |