Uninitialized field "appendelse" in SSA transformation
|
|
Bugzilla Link |
1171 |
Created on |
Nov 05, 2015 17:23 |
Version |
svn |
OS |
All |
Architecture |
PC |
Extended Description
Detected by valgrind:
==46755== Conditional jump or move depends on uninitialised value(s)
==46755== at 0x68459D3: USSATassign (UndoSSATransform.c:312)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845955: USSATassign (UndoSSATransform.c:300)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845955: USSATassign (UndoSSATransform.c:300)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x66D7617: TRAVopt (traverse.c:152)
==46755== by 0x6845254: USSATblock (UndoSSATransform.c:167)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x68450C9: USSATfundef (UndoSSATransform.c:139)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845195: USSATfundef (UndoSSATransform.c:147)
The offending code:
/******************************************************************************
*
* function:
* node* USSATassign(node *arg_node, info *arg_info)
*
* description:
* traverses instruction and removes tagged assignments.
*
******************************************************************************/
node *USSATassign(node *arg_node, info *arg_info)
{
...
if ( ( INFO_APPENDELSE( arg_info))) { // <--- HERE, appendelse uninitialized
arg_node = TCappendAssign( INFO_ELSEASS( arg_info), arg_node);
INFO_ELSEASS( arg_info) = NULL;
INFO_APPENDELSE( arg_info) = FALSE;
}