@@ -225,8 +225,14 @@ static unsigned writeCompressedReloc(uint8_t *buf, const WasmRelocation &rel,
225
225
return encodeULEB128 (value, buf);
226
226
case R_WASM_TABLE_INDEX_SLEB:
227
227
case R_WASM_TABLE_INDEX_SLEB64:
228
+ case R_WASM_TABLE_INDEX_REL_SLEB64:
228
229
case R_WASM_MEMORY_ADDR_SLEB:
229
230
case R_WASM_MEMORY_ADDR_SLEB64:
231
+ case R_WASM_MEMORY_ADDR_REL_SLEB:
232
+ case R_WASM_MEMORY_ADDR_REL_SLEB64:
233
+ case R_WASM_MEMORY_ADDR_TLS_SLEB:
234
+ case R_WASM_MEMORY_ADDR_TLS_SLEB64:
235
+ case R_WASM_TABLE_INDEX_REL_SLEB:
230
236
return encodeSLEB128 (static_cast <int64_t >(value), buf);
231
237
default :
232
238
llvm_unreachable (" unexpected relocation type" );
@@ -242,11 +248,17 @@ static unsigned getRelocWidthPadded(const WasmRelocation &rel) {
242
248
case R_WASM_MEMORY_ADDR_LEB:
243
249
case R_WASM_TABLE_NUMBER_LEB:
244
250
case R_WASM_TABLE_INDEX_SLEB:
251
+ case R_WASM_TABLE_INDEX_REL_SLEB:
245
252
case R_WASM_MEMORY_ADDR_SLEB:
253
+ case R_WASM_MEMORY_ADDR_REL_SLEB:
254
+ case R_WASM_MEMORY_ADDR_TLS_SLEB:
246
255
return 5 ;
247
256
case R_WASM_TABLE_INDEX_SLEB64:
257
+ case R_WASM_TABLE_INDEX_REL_SLEB64:
248
258
case R_WASM_MEMORY_ADDR_LEB64:
249
259
case R_WASM_MEMORY_ADDR_SLEB64:
260
+ case R_WASM_MEMORY_ADDR_REL_SLEB64:
261
+ case R_WASM_MEMORY_ADDR_TLS_SLEB64:
250
262
return 10 ;
251
263
default :
252
264
llvm_unreachable (" unexpected relocation type" );
0 commit comments