tree-optimization/99024 - fix leak in loop vect analysis
When we analyzed a loop as epilogue but later in peeling decide we're not going to use it then in the DTOR we clear the original loops ->aux which causes us to leak the main loop vinfo. Fixed by only clearing aux if it is associated with the vinfo we're destroying. 2021-02-10 Richard Biener <rguenther@suse.de> PR tree-optimization/99024 * tree-vect-loop.c (_loop_vec_info::~_loop_vec_info): Only clear loop->aux if it is associated with the destroyed loop_vinfo.
This commit is contained in:
parent
5da5d8a02c
commit
d997565c41
@ -927,7 +927,11 @@ _loop_vec_info::~_loop_vec_info ()
|
||||
delete scan_map;
|
||||
epilogue_vinfos.release ();
|
||||
|
||||
loop->aux = NULL;
|
||||
/* When we release an epiloge vinfo that we do not intend to use
|
||||
avoid clearing AUX of the main loop which should continue to
|
||||
point to the main loop vinfo since otherwise we'll leak that. */
|
||||
if (loop->aux == this)
|
||||
loop->aux = NULL;
|
||||
}
|
||||
|
||||
/* Return an invariant or register for EXPR and emit necessary
|
||||
|
Loading…
Reference in New Issue
Block a user