SuccessChanges

Summary

  1. Fix UB in EmulateInstructionARM64.cpp (details)
  2. [COFF] Free some memory used for chunks (details)
  3. Fix how cc1 command line options are mapped into FP options. (details)
  4. add debug code to chase down a rare crash in asan/lsan https://github.com/google/sanitizers/issues/1193 (details)
  5. [asan] fix a comment typo (details)
Commit a0b674fd7f06b86241cf19387313b508248a3868 by Adrian Prantl
Fix UB in EmulateInstructionARM64.cpp

This fixes an unhandled signed integer overflow in AddWithCarry() by
using the llvm::checkedAdd() function. Thats to Vedant Kumar for the
suggestion!

<rdar://problem/60926115>

Differential Revision: https://reviews.llvm.org/D80955
The file was modifiedlldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h
The file was addedlldb/unittests/Instruction/CMakeLists.txt
The file was modifiedlldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
The file was addedlldb/unittests/Instruction/TestAArch64Emulator.cpp
The file was modifiedlldb/unittests/CMakeLists.txt
Commit 11d1aa0bcc1197f1b3010171b02c6e9662f34b75 by rnk
[COFF] Free some memory used for chunks

First, do not reserve numSections in the Chunks array. In cases where
there are many non-prevailing sections, this will overallocate memory
which will not be used.

Second, free the memory for sparseChunks after initializeSymbols. After
that, it is never used.

This saves 50MB of 627MB for my use case without affecting performance.
The file was modifiedlld/COFF/InputFiles.cpp
The file was modifiedlld/COFF/InputFiles.h
Commit 8a8d703be0986dd6785cba0b610c9c4708b83e89 by rjmccall
Fix how cc1 command line options are mapped into FP options.

Canonicalize on storing FP options in LangOptions instead of
redundantly in CodeGenOptions.  Incorporate -ffast-math directly
into the values of those LangOptions rather than considering it
separately when building FPOptions.  Build IR attributes from
those options rather than a mix of sources.

We should really simplify the driver/cc1 interaction here and have
the driver pass down options that cc1 directly honors.  That can
happen in a follow-up, though.

Patch by Michele Scandale!
https://reviews.llvm.org/D80315
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was addedclang/test/CodeGen/fp-options-to-fast-math-flags.c
The file was modifiedclang/test/CodeGen/libcalls.c
The file was modifiedclang/test/CodeGenCUDA/library-builtin.cu
The file was modifiedclang/test/CodeGen/complex-math.c
The file was modifiedclang/test/CodeGenCUDA/builtins-amdgcn.cu
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/test/CodeGen/builtins-nvptx-ptx60.cu
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
The file was modifiedclang/test/CodeGenOpenCL/relaxed-fpmath.cl
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 2e6c3e3e7b5eb46452b1819c69919fab820b4233 by kcc
add debug code to chase down a rare crash in asan/lsan https://github.com/google/sanitizers/issues/1193

Summary: add debug code to chase down a rare crash in asan/lsan https://github.com/google/sanitizers/issues/1193

Reviewers: vitalybuka

Subscribers: #sanitizers, llvm-commits

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D80967
The file was modifiedcompiler-rt/lib/lsan/lsan_common.cpp
The file was modifiedcompiler-rt/lib/asan/asan_allocator.cpp
Commit 801d823bdec182d3913aa0a27073229029359ad2 by kcc
[asan] fix a comment typo
The file was modifiedcompiler-rt/lib/asan/asan_allocator.cpp