Commit a9cadb3
authored
[mlir-python-bindings-wasm] add
This PR adds runtime functionality for the mlir-python-bindings-wasm
wheels. The way it works is roughly the same as
[clang-interpreter](http://github.com/llvm/llvm-project/blob/a941e150749650e6a75e948f10d46b0bedcc128b/clang/lib/Interpreter/Wasm.cpp#L120-L126):
the MLIR is compiled to wasm, fully linked into a shared object, and
then `dlopen`ed (function symbols are accessed using `dlsym`).
A couple of things to call out:
1. We're using the `wasm32` target so lowering to LLVM requires using
`index-bitwidth=32` in various passes;
2. The various `numpy` -> `memref_descriptor` helpers need to be
adjusted to work with 32b instead of 64b;
3. For some reason (🤷) `@main` is not a valid function name (collides
with something somewhere in the emscripten runtime).
Follow-up PRs will extend `LLVMBackend` in python-extras to work with
this.WasmExecutionEngine (#248)1 parent 5e7f971 commit a9cadb3
File tree
17 files changed
+1455
-47
lines changed- .github
- actions/setup_base
- workflows
- projects
- eudsl-tblgen
- mlir-python-bindings-wasm
- mlir
17 files changed
+1455
-47
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
217 | | - | |
218 | | - | |
| 217 | + | |
| 218 | + | |
219 | 219 | | |
220 | 220 | | |
221 | 221 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
245 | 245 | | |
246 | 246 | | |
247 | 247 | | |
248 | | - | |
249 | | - | |
| 248 | + | |
250 | 249 | | |
251 | 250 | | |
252 | 251 | | |
| |||
262 | 261 | | |
263 | 262 | | |
264 | 263 | | |
265 | | - | |
266 | | - | |
| 264 | + | |
267 | 265 | | |
268 | 266 | | |
269 | 267 | | |
| |||
280 | 278 | | |
281 | 279 | | |
282 | 280 | | |
283 | | - | |
284 | | - | |
| 281 | + | |
285 | 282 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
368 | 368 | | |
369 | 369 | | |
370 | 370 | | |
371 | | - | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
372 | 398 | | |
373 | 399 | | |
374 | 400 | | |
| |||
378 | 404 | | |
379 | 405 | | |
380 | 406 | | |
381 | | - | |
| 407 | + | |
382 | 408 | | |
383 | 409 | | |
384 | 410 | | |
385 | 411 | | |
386 | 412 | | |
387 | 413 | | |
388 | | - | |
389 | | - | |
390 | | - | |
| 414 | + | |
391 | 415 | | |
392 | 416 | | |
393 | | - | |
394 | | - | |
395 | | - | |
396 | | - | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
397 | 431 | | |
398 | | - | |
399 | | - | |
400 | | - | |
401 | | - | |
402 | 432 | | |
403 | 433 | | |
404 | 434 | | |
| |||
408 | 438 | | |
409 | 439 | | |
410 | 440 | | |
411 | | - | |
412 | 441 | | |
| 442 | + | |
413 | 443 | | |
414 | 444 | | |
415 | 445 | | |
416 | 446 | | |
417 | 447 | | |
418 | 448 | | |
419 | | - | |
420 | 449 | | |
| 450 | + | |
| 451 | + | |
421 | 452 | | |
422 | 453 | | |
423 | 454 | | |
424 | 455 | | |
425 | 456 | | |
426 | 457 | | |
427 | 458 | | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
428 | 466 | | |
429 | 467 | | |
430 | 468 | | |
| |||
448 | 486 | | |
449 | 487 | | |
450 | 488 | | |
451 | | - | |
452 | | - | |
| 489 | + | |
453 | 490 | | |
454 | 491 | | |
455 | 492 | | |
| |||
466 | 503 | | |
467 | 504 | | |
468 | 505 | | |
469 | | - | |
470 | | - | |
| 506 | + | |
471 | 507 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
484 | 484 | | |
485 | 485 | | |
486 | 486 | | |
487 | | - | |
488 | | - | |
| 487 | + | |
489 | 488 | | |
Lines changed: 1 addition & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
266 | 266 | | |
267 | 267 | | |
268 | 268 | | |
269 | | - | |
270 | | - | |
| 269 | + | |
271 | 270 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
86 | | - | |
| 86 | + | |
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
| |||
0 commit comments