Changes

Summary

  1. [WebAssembly] Fix reverse mapping in WasmEHFuncInfo (details)
  2. [flang][fir] Add remaining Ops. Updates to pre-existing Ops. (details)
  3. [test] Add -triple x86_64 to attr-retain.c (details)
  4. [clang][NFC] Clean up whitespace in ClangOpcodesEmitter output (details)
  5. [MLIR][TOSA] Resubmit Tosa to Standard/SCF Lowerings (const, if, while)" (details)
  6. [mlir] Simplify various pieces of code now that Identifier has access to the Context/Dialect (details)
  7. [flang][fir] Upstream utility function valueHasFirAttribute() (details)
  8. [test] Add -triple x86_64 to attr-retain.cpp (details)
  9. [NFC] Remove tab from the source (details)
Commit aa097ef8d474c925e4fbe0efcaad253266c2fd6f by aheejin
[WebAssembly] Fix reverse mapping in WasmEHFuncInfo

D97247 added the reverse mapping from unwind destination to their
source, but it had a critical bug; sources can be multiple, because
multiple BBs can have a single BB as their unwind destination.

This changes `WasmEHFuncInfo::getUnwindSrc` to `getUnwindSrcs` and makes
it return a vector rather than a single BB. It does not return the const
reference to the existing vector but creates a new vector because
`WasmEHFuncInfo` stores not `BasicBlock*` or `MachineBasicBlock*` but
`PointerUnion` of them. Also I hoped to unify those methods for
`BasicBlock` and `MachineBasicBlock` into one using templates to reduce
duplication, but failed because various usages require `BasicBlock*` to
be `const` but it's hard to make it `const` for `MachineBasicBlock`
usages.

Fixes https://github.com/emscripten-core/emscripten/issues/13514.
(More precisely, fixes
https://github.com/emscripten-core/emscripten/issues/13514#issuecomment-784708744)

Reviewed By: dschuff, tlively

Differential Revision: https://reviews.llvm.org/D97583
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
The file was modifiedllvm/include/llvm/CodeGen/WasmEHFuncInfo.h
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
Commit 0b785a46b7eecbfd24394b42814844e02e5fefe6 by eschweitz
[flang][fir] Add remaining Ops. Updates to pre-existing Ops.

  - add ops: rebox, insert_on_range, absent, is_present
  - embox, coordinate_of: replace old hand-written parser/pretty-printer with assembly format
  - remove dead floating point ops, since buitlins work for all types
  - update call op
  - update documentation
  - misc. NFC to formatting
  - add op round trip tests

Authors: Eric Schweitz, Jean Perier, Zachary Selk, Kiran Chandramohan, et.al.

Differential Revision: https://reviews.llvm.org/D97500
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
The file was modifiedflang/lib/Lower/CharacterExpr.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/test/Fir/fir-ops.fir
The file was modifiedflang/lib/Lower/IO.cpp
The file was modifiedflang/lib/Optimizer/Dialect/FIRDialect.cpp
Commit a0c1cd642da51ab8f471d2dd5ba905cf81760187 by i
[test] Add -triple x86_64 to attr-retain.c
The file was modifiedclang/test/CodeGen/attr-retain.c
Commit 9e0d55024d4ed776f209ee04e260bdd314854993 by jrtc27
[clang][NFC] Clean up whitespace in ClangOpcodesEmitter output

This should now be about as style-conforming as TableGen'ed code ever
can reasonably be.
The file was modifiedclang/utils/TableGen/ClangOpcodesEmitter.cpp
Commit 16abacaea9db653b41808fc37277b68168438059 by rob.suderman
[MLIR][TOSA] Resubmit Tosa to Standard/SCF Lowerings (const, if, while)"

Includes a lowering for tosa.const, tosa.if, and tosa.while to Standard/SCF dialects. TosaToStandard is
used for constant lowerings and TosaToSCF handles the if/while ops.

Resubmission of https://reviews.llvm.org/D97518 with ASAN fixes.

Differential Revision: https://reviews.llvm.org/D97529
The file was addedmlir/test/Conversion/TosaToSCF/tosa-to-scf.mlir
The file was addedmlir/include/mlir/Conversion/TosaToStandard/TosaToStandard.h
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was addedmlir/lib/Conversion/TosaToSCF/TosaToSCF.cpp
The file was addedmlir/lib/Conversion/TosaToStandard/TosaToStandard.cpp
The file was addedmlir/include/mlir/Conversion/TosaToSCF/TosaToSCF.h
The file was addedmlir/test/Conversion/TosaToStandard/tosa-to-standard.mlir
The file was modifiedmlir/include/mlir/Conversion/Passes.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was addedmlir/lib/Conversion/TosaToSCF/TosaToSCFPass.cpp
The file was addedmlir/lib/Conversion/TosaToStandard/CMakeLists.txt
The file was addedmlir/lib/Conversion/TosaToStandard/TosaToStandardPass.cpp
The file was modifiedmlir/lib/Conversion/PassDetail.h
The file was addedmlir/lib/Conversion/TosaToSCF/CMakeLists.txt
Commit e6260ad043d84c54d10e463dd82de829c1be24f7 by riddleriver
[mlir] Simplify various pieces of code now that Identifier has access to the Context/Dialect

This also exposed a bug in Dialect loading where it was not correctly identifying identifiers that had the dialect namespace as a prefix.

Differential Revision: https://reviews.llvm.org/D97431
The file was modifiedmlir/lib/IR/Verifier.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
The file was modifiedmlir/examples/toy/Ch4/mlir/MLIRGen.cpp
The file was modifiedmlir/lib/Parser/LocationParser.cpp
The file was modifiedmlir/lib/Transforms/LocationSnapshot.cpp
The file was modifiedmlir/include/mlir/IR/BuiltinTypes.td
The file was modifiedmlir/include/mlir/IR/OperationSupport.h
The file was modifiedmlir/include/mlir/IR/BuiltinAttributes.h
The file was modifiedmlir/examples/toy/Ch6/mlir/MLIRGen.cpp
The file was modifiedmlir/lib/IR/Location.cpp
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
The file was modifiedmlir/lib/Transforms/Utils/DialectConversion.cpp
The file was modifiedmlir/examples/toy/Ch2/mlir/MLIRGen.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
The file was modifiedmlir/examples/toy/Ch3/mlir/MLIRGen.cpp
The file was modifiedmlir/examples/toy/Ch7/mlir/MLIRGen.cpp
The file was modifiedmlir/lib/Parser/DialectSymbolParser.cpp
The file was modifiedmlir/include/mlir/IR/Builders.h
The file was modifiedmlir/lib/IR/Builders.cpp
The file was modifiedmlir/unittests/IR/AttributeTest.cpp
The file was modifiedmlir/examples/toy/Ch5/mlir/MLIRGen.cpp
The file was modifiedmlir/lib/CAPI/IR/BuiltinAttributes.cpp
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/lib/IR/BuiltinAttributes.cpp
The file was modifiedmlir/lib/IR/Operation.cpp
The file was modifiedmlir/include/mlir/IR/Location.h
The file was modifiedmlir/lib/IR/MLIRContext.cpp
Commit ac473bb2b2add52e51b1c18b5acc7d9bfa7619a9 by eschweitz
[flang][fir] Upstream utility function valueHasFirAttribute()

This function will be used in subsequent upstreaming merges.

Author: Jean Perier

Differential Revision: https://reviews.llvm.org/D97502
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROpsSupport.h
Commit 2e2ee4300d1f9766209d435c0d8c44c72092b974 by i
[test] Add -triple x86_64 to attr-retain.cpp
The file was modifiedclang/test/CodeGenCXX/attr-retain.cpp
Commit c88c46080a75467788b4379f49fc664061c2c6d0 by Vitaly Buka
[NFC] Remove tab from the source
The file was modifiedcompiler-rt/lib/hwasan/hwasan_flags.inc