From 0579e9f9de7d71a255cd401826759a9747f85f74 Mon Sep 17 00:00:00 2001 From: Andrew Brown Date: Tue, 29 Sep 2020 14:41:01 -0700 Subject: [PATCH] [machinst x64]: add packed OR --- cranelift/codegen/src/isa/x64/inst/args.rs | 3 +++ cranelift/codegen/src/isa/x64/inst/emit.rs | 1 + 2 files changed, 4 insertions(+) diff --git a/cranelift/codegen/src/isa/x64/inst/args.rs b/cranelift/codegen/src/isa/x64/inst/args.rs index 16acafc940..fc441c302b 100644 --- a/cranelift/codegen/src/isa/x64/inst/args.rs +++ b/cranelift/codegen/src/isa/x64/inst/args.rs @@ -444,6 +444,7 @@ pub enum SseOpcode { Pmulld, Pmullw, Pmuludq, + Por, Pshufb, Pshufd, Psllw, @@ -566,6 +567,7 @@ impl SseOpcode { | SseOpcode::Pminub | SseOpcode::Pmullw | SseOpcode::Pmuludq + | SseOpcode::Por | SseOpcode::Pshufd | SseOpcode::Psllw | SseOpcode::Pslld @@ -717,6 +719,7 @@ impl fmt::Debug for SseOpcode { SseOpcode::Pmulld => "pmulld", SseOpcode::Pmullw => "pmullw", SseOpcode::Pmuludq => "pmuludq", + SseOpcode::Por => "por", SseOpcode::Pshufb => "pshufb", SseOpcode::Pshufd => "pshufd", SseOpcode::Psllw => "psllw", diff --git a/cranelift/codegen/src/isa/x64/inst/emit.rs b/cranelift/codegen/src/isa/x64/inst/emit.rs index b4524eb5d3..71d81c2e4f 100644 --- a/cranelift/codegen/src/isa/x64/inst/emit.rs +++ b/cranelift/codegen/src/isa/x64/inst/emit.rs @@ -1809,6 +1809,7 @@ pub(crate) fn emit( SseOpcode::Pmulld => (LegacyPrefixes::_66, 0x0F3840, 3), SseOpcode::Pmullw => (LegacyPrefixes::_66, 0x0FD5, 2), SseOpcode::Pmuludq => (LegacyPrefixes::_66, 0x0FF4, 2), + SseOpcode::Por => (LegacyPrefixes::_66, 0x0FEB, 2), SseOpcode::Pshufb => (LegacyPrefixes::_66, 0x0F3800, 3), SseOpcode::Psubb => (LegacyPrefixes::_66, 0x0FF8, 2), SseOpcode::Psubd => (LegacyPrefixes::_66, 0x0FFA, 2),