[TIR][Bugfix] Improved massive build times caused by tir.floormod and tir.floordiv...
authordprankratz <65860457+dprankratz@users.noreply.github.com>
Tue, 28 Jul 2020 16:06:06 +0000 (10:06 -0600)
committerGitHub <noreply@github.com>
Tue, 28 Jul 2020 16:06:06 +0000 (09:06 -0700)
commita02d37743e7bdaf54eeef4ef04c311a33da92b46
tree309691dc7134da372e638e2d55ba8bdf39e39074
parentd35a149f8134ff2af0c5ed0cc33ddda8b93c2034
[TIR][Bugfix] Improved massive build times caused by tir.floormod and tir.floordiv. Fixed Topi testcase. (#5666)

* Improved uncommon case of floormod and floordiv. Removed dependence on np floor_div and fmod.

* Fixed clang-format complaints

* Streamlined floormod and floordiv lowering logic

* Improved build times by expressing int64 case of tir FloorMod and FloorDiv using let nodes

* Updated use-def analysis and llvm codegen to support duplicated letnodes.

* Corrected misuse of var_map_ in llvm codegen

* Updated backends that support LetNode

* Changed floormod and div lowering logic to avoid using FP on systems that don't support it.

* Fixed formatting

Co-authored-by: pankratz <pankratz@ualberta.ca>
src/target/llvm/codegen_llvm.cc
src/target/llvm/codegen_llvm.h
src/target/source/codegen_c.cc
src/target/source/codegen_c.h
src/target/spirv/codegen_spirv.cc
src/target/spirv/codegen_spirv.h
src/tir/transforms/lower_intrin.cc
src/tir/transforms/split_host_device.cc
topi/tests/python/test_topi_broadcast.py