You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The design to handle aggregate types during IR translation in GlobalISel will need to be revisited to at least acknowledge that we choose the right approach.
At first, this is not critical that we don’t support aggregate types, thus a simple mapping one Value* to one Vreg is perfectly fine.
When we would add the support for such types, we have basically two options:
Replicate SDAG solution, i.e., more or less map one Value* to a list of Vregs (one Vreg per component).
Keep the mapping simple, i.e., one Value* to one (big) Vreg.
Extended Description
The design to handle aggregate types during IR translation in GlobalISel will need to be revisited to at least acknowledge that we choose the right approach.
At first, this is not critical that we don’t support aggregate types, thus a simple mapping one Value* to one Vreg is perfectly fine.
When we would add the support for such types, we have basically two options:
The pros and cons are discussed in the following thread:
http://lists.llvm.org/pipermail/llvm-dev/2016-January/094049.html
Although #2 seems preferable, we don’t have any actual experience on how well we would be to optimize this representation.
The text was updated successfully, but these errors were encountered: