arcana-lab / memoir

A case for representing data collections and objects in the LLVM IR
MIT License
11 stars 2 forks source link

Upgrade core MEMOIR functionality to LLVM18 #73

Closed tommymcm closed 1 week ago

tommymcm commented 3 weeks ago

This issue will track progress on upgrading MEMOIR to LLVM18.

Once closed, the current main branch will be renamed to v9 and v18 will become main.

General problems that fall under this issue:

tommymcm commented 3 weeks ago

Current Design for PassManager updates

tommymcm commented 3 weeks ago

PassManager design changed to single source:

In compiler/memoir/Passes.def, register your pass with PASS(<scope>, <class>, <name>, <args>...) or analysis with ANALYSIS(<scope>, <class>, <result>, <args>...).

Where:

tommymcm commented 3 weeks ago

Everything except for RangeAnalysis, LiveRangeAnalysis, DeadElementElimination has been updated.

Those features rely on NOELLE, so we must wait until they are ready.

They are currently disabled by default, otherwise v18 can be considered as rc1.

tommymcm commented 1 week ago

Completed with 077073d