[PATCH] PR tree-optimization/100299 - Implement a sparse bitmap representation for Rangers on-entry cache.

Andrew MacLeod amacleod@redhat.com
Mon Jun 7 21:35:26 GMT 2021


This pair of patches provides a sparse representation of the on-entry 
cache for ranger.  When the number of basic blocks exceed 
-param=evrp-sparse-threshold=  (default to 800), ranger moves to a 
sparse representation rather allocating a full vector for each ssa-name.

This is based on an extension of the sparse bitmap code which enables us 
to use multiple bits instead of single bits. We'll cache up to 15 unique 
ranges for any ssa_name in this implementation.

Bootstrapped on x86_64-pc-linux-gnu with no new regressions. Pushed.

I will also port this to gcc11 in a couple of days assuming no 
unforeseen issues show up.

Andrew

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 100299-a.patch
Type: text/x-patch
Size: 5706 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20210607/5d0a7547/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 100299-b.patch
Type: text/x-patch
Size: 8118 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20210607/5d0a7547/attachment-0003.bin>


More information about the Gcc-patches mailing list