1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/bindings/ocaml/transforms
Joerg Sonnenberger 5200dee212 Reapply r374743 with a fix for the ocaml binding
Add a pass to lower is.constant and objectsize intrinsics

This pass lowers is.constant and objectsize intrinsics not simplified by
earlier constant folding, i.e. if the object given is not constant or if
not using the optimized pass chain. The result is recursively simplified
and constant conditionals are pruned, so that dead blocks are removed
even for -O0. This allows inline asm blocks with operand constraints to
work all the time.

The new pass replaces the existing lowering in the codegen-prepare pass
and fallbacks in SDAG/GlobalISEL and FastISel. The latter now assert
on the intrinsics.

Differential Revision: https://reviews.llvm.org/D65280

llvm-svn: 374784
2019-10-14 16:15:14 +00:00
..
ipo [LLVM-C][Ocaml] Add MergeFunctions and DCE pass 2019-09-29 16:06:22 +00:00
passmgr_builder Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
scalar_opts Reapply r374743 with a fix for the ocaml binding 2019-10-14 16:15:14 +00:00
utils Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
vectorize Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CMakeLists.txt