]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR c/18851 (IMA is slow and could be sped up)
authorAndrew Pinski <pinskia@physics.uc.edu>
Sun, 2 Oct 2005 19:15:58 +0000 (19:15 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Sun, 2 Oct 2005 19:15:58 +0000 (12:15 -0700)
commitf13c9b2c76d81cebc647765b6e4b99c952cc594d
treee2408904e13e4cac8780c4d868e2a5b717c4d564
parentaa58883c233484f8b58d245b5248162379fd1f06
re PR c/18851 (IMA is slow and could be sped up)

2005-10-02  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c/18851
        * c-typeck.c (tagged_tu_seen): Rename to ...
        (tagged_tu_seen_cache): this and add val field.
        (comptypes): Move functional to comptypes_internal
        and free tagged_tu_seen.
        (comptypes_internal): New function and call comptypes_internal
        instead of comptypes. Speed up by sibcalling
        tagged_types_tu_compatible_p.
        (alloc_tagged_tu_seen): New function
        (free_all_tagged_tu_seen_up_to): New function.
        (tagged_types_tu_compatible_p): Return the val of the seen two
        types.
        Add that the two types are the same to tagged_tu_seen_base
        if they are and call comptypes_internal instead of comptypes.
        <case UNION_TYPE>: Speed up common type where the fields are
        in the same order.
        (function_types_compatible_p): Call comptypes_internal instead of
        comptypes.
        (type_lists_compatible_p): Likewise.
        (all functions): s/tagged_tu_seen/tagged_tu_seen_cache/.

From-SVN: r104873
gcc/ChangeLog
gcc/c-typeck.c