From 23e1d6b5e30c07bc6e45ae004089defff2f25265 Mon Sep 17 00:00:00 2001 From: Jamey Sharp Date: Mon, 6 Feb 2023 09:34:21 -0800 Subject: [PATCH] egraphs/cprop: Don't extend constants to `i128` (#5717) Fixes #5711. --- cranelift/codegen/src/opts/cprop.isle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cranelift/codegen/src/opts/cprop.isle b/cranelift/codegen/src/opts/cprop.isle index 7c58ee6ad6..817bffcd98 100644 --- a/cranelift/codegen/src/opts/cprop.isle +++ b/cranelift/codegen/src/opts/cprop.isle @@ -70,10 +70,10 @@ (iconst _ k2))) (subsume (iconst ty (imm64_sshr ty k1 k2)))) -(rule (simplify (uextend wide (iconst narrow imm))) +(rule (simplify (uextend (fits_in_64 wide) (iconst narrow imm))) (subsume (iconst wide (imm64 (u64_uextend_imm64 narrow imm))))) -(rule (simplify (sextend wide (iconst narrow imm))) +(rule (simplify (sextend (fits_in_64 wide) (iconst narrow imm))) (subsume (iconst wide (imm64_masked wide (i64_as_u64 (i64_sextend_imm64 narrow imm)))))) (rule (simplify