diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-mudflap.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eeab0fe..ab5a315 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-09-15 Jakub Jelinek <jakub@redhat.com> + + PR libmudflap/36397 + * tree-mudflap.c (mf_xform_derefs_1): Handle VIEW_CONVERT_EXPR. + 2008-09-14 Andreas Schwab <schwab@suse.de> * tree-call-cdce.c (check_target_format): Accept Motorola formats. diff --git a/gcc/tree-mudflap.c b/gcc/tree-mudflap.c index 3f77b2c..0b3eba5 100644 --- a/gcc/tree-mudflap.c +++ b/gcc/tree-mudflap.c @@ -773,6 +773,13 @@ mf_xform_derefs_1 (gimple_stmt_iterator *iter, tree *tp, base = TREE_OPERAND (var, 0); break; } + else if (TREE_CODE (var) == VIEW_CONVERT_EXPR) + { + var = TREE_OPERAND (var, 0); + if (CONSTANT_CLASS_P (var) + && TREE_CODE (var) != STRING_CST) + return; + } else { gcc_assert (TREE_CODE (var) == VAR_DECL |