< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64Assembler.java

Print this page




2986     }
2987 
2988     public final void bsrq(Register dst, Register src) {
2989         prefixq(dst, src);
2990         emitByte(0x0F);
2991         emitByte(0xBD);
2992         emitModRM(dst, src);
2993     }
2994 
2995     public final void bswapq(Register reg) {
2996         prefixq(reg);
2997         emitByte(0x0F);
2998         emitByte(0xC8 + encode(reg));
2999     }
3000 
3001     public final void cdqq() {
3002         rexw();
3003         emitByte(0x99);
3004     }
3005 












3006     public final void cmovq(ConditionFlag cc, Register dst, Register src) {
3007         prefixq(dst, src);
3008         emitByte(0x0F);
3009         emitByte(0x40 | cc.getValue());
3010         emitModRM(dst, src);
3011     }
3012 
3013     public final void setb(ConditionFlag cc, Register dst) {
3014         prefix(dst, true);
3015         emitByte(0x0F);
3016         emitByte(0x90 | cc.getValue());
3017         emitModRM(0, dst);
3018     }
3019 
3020     public final void cmovq(ConditionFlag cc, Register dst, AMD64Address src) {
3021         prefixq(src, dst);
3022         emitByte(0x0F);
3023         emitByte(0x40 | cc.getValue());
3024         emitOperandHelper(dst, src, 0);
3025     }




2986     }
2987 
2988     public final void bsrq(Register dst, Register src) {
2989         prefixq(dst, src);
2990         emitByte(0x0F);
2991         emitByte(0xBD);
2992         emitModRM(dst, src);
2993     }
2994 
2995     public final void bswapq(Register reg) {
2996         prefixq(reg);
2997         emitByte(0x0F);
2998         emitByte(0xC8 + encode(reg));
2999     }
3000 
3001     public final void cdqq() {
3002         rexw();
3003         emitByte(0x99);
3004     }
3005 
3006     public final void repStosb() {
3007         emitByte(0xf3);
3008         rexw();
3009         emitByte(0xaa);
3010     }
3011 
3012     public final void repStosq() {
3013         emitByte(0xf3);
3014         rexw();
3015         emitByte(0xab);
3016     }
3017 
3018     public final void cmovq(ConditionFlag cc, Register dst, Register src) {
3019         prefixq(dst, src);
3020         emitByte(0x0F);
3021         emitByte(0x40 | cc.getValue());
3022         emitModRM(dst, src);
3023     }
3024 
3025     public final void setb(ConditionFlag cc, Register dst) {
3026         prefix(dst, true);
3027         emitByte(0x0F);
3028         emitByte(0x90 | cc.getValue());
3029         emitModRM(0, dst);
3030     }
3031 
3032     public final void cmovq(ConditionFlag cc, Register dst, AMD64Address src) {
3033         prefixq(src, dst);
3034         emitByte(0x0F);
3035         emitByte(0x40 | cc.getValue());
3036         emitOperandHelper(dst, src, 0);
3037     }


< prev index next >