We found that adding new fields to the OP structure caused a
segmentation fault in the build of SPEC dealII during code generation.

I tracked this down to a Chi node being assigned the _base field in a
POINTS_TO structure, which normally holds a pointer to ST entry, being
incorrectly interpreted.  Up to this point in time it appears that we
have been fortunate that the Chi node is being zeroed after the optimizer,
which inhibits processing Chi node as a symbol table entry in
EBO_OPT_Const_Array().

In this situation the Chi node being assigned to base is due to the
POINTS_TO structure being of type BASE_IS_DYNAMIC, thus _base is being
used to hold debugging information about the reference.  One should
only expect _base to be set to a symbol table entry when the base kind
is BASE_IS_FIXED.

I attached a patch to correct this issue.  In other files the member
function Base_is_fixed() tends to be used to determine whether the
base is "fixed".  I updated the other check in this file to use this
macro.

Could a gatekeeper review this patch when he or she have a chance?

Thanks,

Doug

Attachment: ebo_points_to.patch
Description: ebo_points_to.patch

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to