FailedChanges

Summary

  1. Fix two -Wrange-loop-analysis warnings that Xcode 12 beta incorrectly complains about (details)
  2. [WebAssembly] Do not assume br_table range checks will be gt_u (details)
  3. [llvm-objcopy] Fix crash when removing symbol table at same time as adding a symbol (details)
Commit 7e2d27bc554eb607c90e55c89d2537f5d711234c by thakis
Fix two -Wrange-loop-analysis warnings that Xcode 12 beta incorrectly complains about

Xcode 12 beta apparently has the Wrange-loop-analysis changes from
half a year ago, but it seems to lack https://reviews.llvm.org/D72212
which made the warning usable again.
The file was modifiedclang-tools-extra/clangd/unittests/PreambleTests.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit 65330f394b2c5ede01acb97a84112c3cc0127c46 by tlively
[WebAssembly] Do not assume br_table range checks will be gt_u

OSS-Fuzz and the Emscripten test suite uncovered some edge cases in
which the range check instruction seemed to be an (i32.const 0) or
other unexpected instruction, triggering an assertion. Unfortunately
the reproducers are rather complicated, so they don't make good unit
tests. This commit removes the bad assertion and conservatively
optimizes range checks only when the range check instruction is
i32.gt_u.

Differential Revision: https://reviews.llvm.org/D83169
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
Commit afd81a637dfc79d2960ef8add1c697cb81c929ef by jubnzv
[llvm-objcopy] Fix crash when removing symbol table at same time as adding a symbol

This patch resolves crash that occurs when user wanted to remove all
symbols and add a brand new one using:

```
llvm-objcopy -R .symtab --add-symbol foo=1234 in.o out.o
```

Before these changes the symbol table internally being null when adding
new symbols. For now we will regenerate symtab in this case.

This fixes: https://bugs.llvm.org/show_bug.cgi?id=43930

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D82935
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was addedllvm/test/tools/llvm-objcopy/ELF/add-symbol-new-symtab.test
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp