[clang] [lld] [llvm] [WebAssembly] Define call-indirect-overlong and bulk-memory-opt features (PR #117087)
Heejin Ahn via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 21 19:22:45 PST 2024
================
@@ -255,10 +255,11 @@ static void setRelocs(const std::vector<T *> &chunks,
}
}
-// An object file can have two approaches to tables. With the reference-types
-// feature enabled, input files that define or use tables declare the tables
-// using symbols, and record each use with a relocation. This way when the
-// linker combines inputs, it can collate the tables used by the inputs,
+// An object file can have two approaches to tables. With the
+// call-indirect-overlong feature enabled (explicitly, or implied by the
+// reference-types feature), input files that define or use tables declare the
+// tables using symbols, and record each use with a relocation. This way when
+// the linker combines inputs, it can collate the tables used by the inputs,
// assigning them distinct table numbers, and renumber all the uses as
// appropriate. At the same time, the linker has special logic to build the
// indirect function table if it is needed.
----------------
aheejin wrote:
```suggestion
// reference-types feature or call-indirect-overlong feature enabled
// (explicitly, or implied by the reference-types feature), input files that
// define or use tables declare the tables using symbols, and record each use
// with a relocation. This way when the linker combines inputs, it can collate
// the tables used by the inputs, assigning them distinct table numbers, and
// renumber all the uses as appropriate. At the same time, the linker has
// special logic to build the indirect function table if it is needed.
```
How about listing both feature here and elsewhere for some reader who might not know about the `call-indirect-overlong` feature, given that it is not a real Wasm proposal-based feature?
https://github.com/llvm/llvm-project/pull/117087
More information about the cfe-commits
mailing list