From f6cb5f20a594226d124d094762273fff2eab94d7 Mon Sep 17 00:00:00 2001 From: Luca Barbato Date: Thu, 17 May 2018 16:07:30 +0000 Subject: [PATCH] Check for the extended mnemonic It is what objdump produces usually. --- library/stdarch/coresimd/powerpc64/vsx.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/library/stdarch/coresimd/powerpc64/vsx.rs b/library/stdarch/coresimd/powerpc64/vsx.rs index c0ba321226c4..1d559fef938d 100644 --- a/library/stdarch/coresimd/powerpc64/vsx.rs +++ b/library/stdarch/coresimd/powerpc64/vsx.rs @@ -231,9 +231,11 @@ mod sealed { unsafe fn vec_xxpermdi(self, b: Self, dm: u8) -> Self; } + // xxpermdi has an big-endian bias and extended mnemonics #[inline] #[target_feature(enable = "vsx")] - #[cfg_attr(test, assert_instr(xxpermdi, dm = 0x0))] + #[cfg_attr(all(test, target_endian="little"), assert_instr(xxmrgld, dm = 0x0))] + #[cfg_attr(all(test, target_endian="big"), assert_instr(xxspltd, dm = 0x0))] unsafe fn xxpermdi(a: i64x2, b: i64x2, dm: u8) -> i64x2 { match dm & 0b11 { 0 => simd_shuffle2(a, b, [0b00, 0b10]),