[PATCH] D103745: [dfsan] Add full fast8 support

George Balatsouras via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Jun 5 01:14:10 PDT 2021


gbalats created this revision.
gbalats added reviewers: stephan.yichao.zhao, browneee.
gbalats added projects: Sanitizers, LLVM.
Herald added subscribers: jfb, hiraditya.
gbalats requested review of this revision.
Herald added a project: clang.
Herald added subscribers: llvm-commits, Sanitizers, cfe-commits.

Complete support for fast8:

- amend shadow size and mapping in runtime
- remove fast16 mode and -dfsan-fast-16-labels flag
- remove legacy mode and make fast8 mode the default
- remove dfsan-fast-8-labels flag
- remove functions in dfsan interface only applicable to legacy
- remove legacy-related instrumentation code and tests
- update documentation.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D103745

Files:
  clang/docs/DataFlowSanitizer.rst
  clang/docs/DataFlowSanitizerDesign.rst
  compiler-rt/include/sanitizer/dfsan_interface.h
  compiler-rt/lib/dfsan/dfsan.cpp
  compiler-rt/lib/dfsan/dfsan.h
  compiler-rt/lib/dfsan/dfsan_flags.inc
  compiler-rt/lib/dfsan/dfsan_platform.h
  compiler-rt/lib/fuzzer/dataflow/DataFlow.cpp
  compiler-rt/test/dfsan/atomic.cpp
  compiler-rt/test/dfsan/basic.c
  compiler-rt/test/dfsan/custom.cpp
  compiler-rt/test/dfsan/dump_labels.c
  compiler-rt/test/dfsan/event_callbacks.c
  compiler-rt/test/dfsan/fast16labels.c
  compiler-rt/test/dfsan/fast8labels.c
  compiler-rt/test/dfsan/flags.c
  compiler-rt/test/dfsan/flush.c
  compiler-rt/test/dfsan/fncall.c
  compiler-rt/test/dfsan/fork.cpp
  compiler-rt/test/dfsan/label_count.c
  compiler-rt/test/dfsan/origin_add_label.c
  compiler-rt/test/dfsan/origin_branch.c
  compiler-rt/test/dfsan/origin_disabled.c
  compiler-rt/test/dfsan/origin_invalid.c
  compiler-rt/test/dfsan/origin_ld_lost.c
  compiler-rt/test/dfsan/origin_ldst.c
  compiler-rt/test/dfsan/origin_limit.c
  compiler-rt/test/dfsan/origin_memcpy.c
  compiler-rt/test/dfsan/origin_memmove.c
  compiler-rt/test/dfsan/origin_memset.c
  compiler-rt/test/dfsan/origin_overlapped.c
  compiler-rt/test/dfsan/origin_set_label.c
  compiler-rt/test/dfsan/origin_stack_trace.c
  compiler-rt/test/dfsan/origin_track_ld.c
  compiler-rt/test/dfsan/origin_unaligned_memtrans.c
  compiler-rt/test/dfsan/origin_untainted.c
  compiler-rt/test/dfsan/origin_with_sigactions.c
  compiler-rt/test/dfsan/origin_with_signals.cpp
  compiler-rt/test/dfsan/pair.cpp
  compiler-rt/test/dfsan/propagate.c
  compiler-rt/test/dfsan/pthread.c
  compiler-rt/test/dfsan/release_shadow_space.c
  compiler-rt/test/dfsan/sigaction.c
  compiler-rt/test/dfsan/sigaction_stress_test.c
  compiler-rt/test/dfsan/struct.c
  llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
  llvm/test/Instrumentation/DataFlowSanitizer/abilist.ll
  llvm/test/Instrumentation/DataFlowSanitizer/abilist_aggregate.ll
  llvm/test/Instrumentation/DataFlowSanitizer/arith.ll
  llvm/test/Instrumentation/DataFlowSanitizer/array.ll
  llvm/test/Instrumentation/DataFlowSanitizer/atomics.ll
  llvm/test/Instrumentation/DataFlowSanitizer/basic.ll
  llvm/test/Instrumentation/DataFlowSanitizer/call.ll
  llvm/test/Instrumentation/DataFlowSanitizer/dont_combine_offset_labels_on_gep.ll
  llvm/test/Instrumentation/DataFlowSanitizer/external_mask.ll
  llvm/test/Instrumentation/DataFlowSanitizer/fast16labels.ll
  llvm/test/Instrumentation/DataFlowSanitizer/load.ll
  llvm/test/Instrumentation/DataFlowSanitizer/musttailcall.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_abilist.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_cached_shadows.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_call.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_load.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_mem_intrinsic.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_other_ops.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_phi.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_select.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_store.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_store_threshold.ll
  llvm/test/Instrumentation/DataFlowSanitizer/origin_track_load.ll
  llvm/test/Instrumentation/DataFlowSanitizer/phi.ll
  llvm/test/Instrumentation/DataFlowSanitizer/select.ll
  llvm/test/Instrumentation/DataFlowSanitizer/shadow-args-zext.ll
  llvm/test/Instrumentation/DataFlowSanitizer/store.ll
  llvm/test/Instrumentation/DataFlowSanitizer/struct.ll
  llvm/test/Instrumentation/DataFlowSanitizer/union-large.ll
  llvm/test/Instrumentation/DataFlowSanitizer/union.ll
  llvm/test/Instrumentation/DataFlowSanitizer/vector.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103745.350037.patch
Type: text/x-patch
Size: 224971 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210605/6ff913da/attachment-0001.bin>


More information about the cfe-commits mailing list