mlir-hlo/lib/Dialect/mhlo/transforms
Benjamin Kramer f4414fcd66 [MHLO:Linalg] Add support for lowering unsigned ops
This strips away the signedness with a type converter, using unrealized
conversion casts. The rest is mostly mechanically pushing the original op down
the pipeline so lowerings can see the original types.

Signed types stay signless for now. This can be changed in the HLO bridge later.

I did a pass over all ops and added unsigned lowerings where they were missing.
There may be more.

Currently the lowering will die at a later stage because it doesn't understand
the unrealized casts.

PiperOrigin-RevId: 371077494
2021-04-29 02:27:35 -07:00
..
CMakeLists.txt [MHLO] Add pass to move up dynamic broadcasts for fusion 2021-03-10 06:21:57 -08:00
chlo_legalize_to_hlo.cc Generalize the HloBinaryElementwiseAdaptor 2021-03-30 03:53:53 -07:00
chlo_legalize_to_hlo_pass.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
chlo_legalize_to_hlo_patterns.td [MLIR][CHLO] Add `is_inf`, `is_pos_inf`, and `is_neg_inf` to CHLO dialect 2021-01-27 09:00:56 -08:00
hlo_legalize_to_lhlo.cc mlir-hlo-opt: set preloadDialectsInContext to false. 2021-03-30 01:07:14 -07:00
legalize_control_flow.cc Fix MLIR include paths. 2020-12-17 00:56:04 -08:00
legalize_gather_to_torch_index_select.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
legalize_to_linalg.cc [MHLO:Linalg] Add support for lowering unsigned ops 2021-04-29 02:27:35 -07:00
legalize_to_standard.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
legalize_to_standard_patterns.td Lowering for mhlo.ceil to std.ceil 2020-08-12 16:15:35 -07:00
legalize_trigonometric_to_approximation.cc Fix tanh lowering for NaN input. 2021-03-24 06:34:36 -07:00
lhlo_fuse_linalg.cc Integrate LLVM at llvm/llvm-project@678241795c 2021-03-16 13:33:00 -07:00
lhlo_legalize_to_affine.cc PR #47315: [MLIR] Add concatenateOp lowering from lmhlo to Affine. 2021-04-14 11:06:38 -07:00
lhlo_legalize_to_gpu.cc [MLIR][NFC] Rename ReduceOp operands() => inputs(). 2021-04-14 12:08:23 -07:00
lhlo_legalize_to_parallel_loops.cc [MLIR][NFC] Rename ReduceOp operands() => inputs(). 2021-04-14 12:08:23 -07:00
lower_complex.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
lower_complex_patterns.td Generate Equal and NotEqual kernels for complex types. 2021-04-15 00:35:52 -07:00
lower_general_dot.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
materialize_broadcasts.cc More cleanup in mlir-hlo to prepare for the standalone build 2020-08-03 19:28:00 -07:00
materialize_broadcasts_pass.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
mhlo_control_flow_to_scf.cc Integrate LLVM at llvm/llvm-project@37e1458128 2021-04-22 22:57:08 -07:00
mhlo_fusion.cc Integrate LLVM at llvm/llvm-project@37e1458128 2021-04-22 22:57:08 -07:00
move_up_dynamic_broadcasts_for_fusion.cc [MLIR][MHLO] Generalize extent tensor cast elimination in bcast moving 2021-04-23 10:52:50 -07:00
optimize_mhlo.cc More cleanup in mlir-hlo to prepare for the standalone build 2020-08-03 19:28:00 -07:00
optimize_mhlo_pass.cc Integrate LLVM at llvm/llvm-project@b24436ac96 2021-03-23 12:20:17 -07:00
sink_constants_to_control_flow.cc Enable fallback legalization for MaxPoolGradGrad and MaxPool3DGradGrad ops 2020-11-13 13:49:05 -08:00
test_infer_shaped_type_pass.cc mlir-hlo-opt: set preloadDialectsInContext to false. 2021-03-30 01:07:14 -07:00
transform_unranked_hlo.cc Support up to rank 8 in rank specialization for SelectOp. 2021-04-08 04:55:41 -07:00
unfuse_batch_norm.cc Integrate LLVM at llvm/llvm-project@678241795c 2021-03-16 13:33:00 -07:00
unfuse_batch_norm_pass.cc mlir-hlo-opt: set preloadDialectsInContext to false. 2021-03-30 01:07:14 -07:00