rutkoor commented on code in PR #15679: URL: https://github.com/apache/tvm/pull/15679#discussion_r1334728620
########## python/tvm/relax/transform/legalize_ops/manipulate.py: ########## @@ -205,3 +213,16 @@ def te_layout_transform(data, name): output_dtype = call_args[0].struct_info.dtype output_sinfo = [TensorStructInfo(output_shape, output_dtype)] return call_tir(gvar, call_args, output_sinfo, tir_vars) + + +@register_legalize("relax.remove_pad") +def _remove_pad(bb: BlockBuilder, call: Call) -> Expr: + orig_shape = call.attrs.orig_shape + + def te_remove_pad(data): + """ + Returns a new compute that restrict the original expression to the shape of orig_shape + """ + return te.compute(orig_shape, data, name="te_remove_pad") Review Comment: Thanks @masahi for your helpful suggestions. In the latest changes I have defined remove_pad operator inside `alter_op_impl.cc`. As of now, the test case in this PR fails because the `te::compute` introduces min Range value to `int32(0)`, whereas when reading `Expected` relax testcase the min Range value is being read as `int64(0)`. Please let me know what I should do with min Range problem. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@tvm.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org