1# Check 32bit BMI2 instructions 2 3 .allow_index_reg 4 .text 5_start: 6 7# Test for op r32, r/m32, imm8 8 rorx $7,%eax,%ebx 9 rorx $7,(%ecx),%ebx 10 11# Test for op r32, r32, r/m32 12 mulx %eax,%ebx,%esi 13 mulx (%ecx),%ebx,%esi 14 pdep %eax,%ebx,%esi 15 pdep (%ecx),%ebx,%esi 16 pext %eax,%ebx,%esi 17 pext (%ecx),%ebx,%esi 18 19# Test for op r32, r/m32, r32 20 bzhi %eax,%ebx,%esi 21 bzhi %ebx,(%ecx),%esi 22 sarx %eax,%ebx,%esi 23 sarx %ebx,(%ecx),%esi 24 shlx %eax,%ebx,%esi 25 shlx %ebx,(%ecx),%esi 26 shrx %eax,%ebx,%esi 27 shrx %ebx,(%ecx),%esi 28 29 .intel_syntax noprefix 30 31# Test for op r32, r/m32, imm8 32 rorx ebx,eax,7 33 rorx ebx,DWORD PTR [ecx],7 34 rorx ebx,[ecx],7 35 36# Test for op r32, r32, r/m32 37 mulx esi,ebx,eax 38 mulx esi,ebx,DWORD PTR [ecx] 39 mulx esi,ebx,[ecx] 40 pdep esi,ebx,eax 41 pdep esi,ebx,DWORD PTR [ecx] 42 pdep esi,ebx,[ecx] 43 pext esi,ebx,eax 44 pext esi,ebx,DWORD PTR [ecx] 45 pext esi,ebx,[ecx] 46 47# Test for op r32, r/m32, r32 48 bzhi esi,ebx,eax 49 bzhi esi,DWORD PTR [ecx],ebx 50 bzhi esi,[ecx],ebx 51 sarx esi,ebx,eax 52 sarx esi,DWORD PTR [ecx],ebx 53 sarx esi,[ecx],ebx 54 shlx esi,ebx,eax 55 shlx esi,DWORD PTR [ecx],ebx 56 shlx esi,[ecx],ebx 57 shrx esi,ebx,eax 58 shrx esi,DWORD PTR [ecx],ebx 59 shrx esi,[ecx],ebx 60