[PATCH] D69516: [scudo][standalone] Consolidate lists

Kostya Kortchinsky via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 28 08:54:17 PDT 2019


cryptoad created this revision.
cryptoad added reviewers: hctim, morehouse, pcc, cferris.
Herald added subscribers: Sanitizers, jfb.
Herald added projects: Sanitizers, LLVM.

This is a clean patch using the last diff of D69265 <https://reviews.llvm.org/D69265>, but using git
instead of svn, since svn went ro and arc was making my life harded
than it needed to be.

I was going to introduce a couple more lists and realized that our
lists are currently a bit all over the place. While we have a singly
linked list type relatively well defined, we are using doubly linked
lists defined on the fly for the stats and for the secondary blocks.

This CL adds a doubly linked list object, reorganizing the singly list
one to extract as much of the common code as possible. We use this
new type in the stats and the secondary. We also reorganize the list
tests to benefit from this consolidation.

There are a few side effect changes such as using for iterator loops
that are, in my opinion, cleaner in a couple of places.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D69516

Files:
  compiler-rt/lib/scudo/standalone/list.h
  compiler-rt/lib/scudo/standalone/primary32.h
  compiler-rt/lib/scudo/standalone/primary64.h
  compiler-rt/lib/scudo/standalone/quarantine.h
  compiler-rt/lib/scudo/standalone/release.h
  compiler-rt/lib/scudo/standalone/secondary.cpp
  compiler-rt/lib/scudo/standalone/secondary.h
  compiler-rt/lib/scudo/standalone/stats.h
  compiler-rt/lib/scudo/standalone/tests/list_test.cpp
  compiler-rt/lib/scudo/standalone/tests/release_test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69516.226674.patch
Type: text/x-patch
Size: 20020 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191028/d1d3c31f/attachment.bin>


More information about the llvm-commits mailing list