Skip to content

Commit

Permalink
Implement boxing/unboxing during VectorAPIExpansion under an option
Browse files Browse the repository at this point in the history
- introduce new category of temps: vec_len_boxed_unknown
- build temp and whole webs as before
- wherever a temp was invalidated before assign vec_len_boxed_unknown instead
- store vectorization info for calls per node vs. per symbol reference for temps
- always vectorize nodes that are calls to vector API methods, even if input vectors
  need to be unboxed or result needs to be boxed
- since boxing/unboxing is not supported for all types, have an extra pass just before
  transformation and invalidate whole web if it contains unsupported boxing/unboxing
- transformation happens as before, except that we first check if children of non-vectorized
  node need to be boxed or children of vectorized node need to be unboxed, insert
  boxing/unboxing correspondingly
- this prototype is only enabled under -Xjit:enableVectorAPIBoxing option and the default
  behaviour shoulld be preserved
  • Loading branch information
gita-omr committed Dec 5, 2024
1 parent ba6e625 commit 7f5af92
Show file tree
Hide file tree
Showing 2 changed files with 1,110 additions and 209 deletions.
Loading

0 comments on commit 7f5af92

Please sign in to comment.