src/cpu/x86/vm/assembler_x86.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/cpu/x86/vm

src/cpu/x86/vm/assembler_x86.hpp

Print this page
rev 5513 : 8026844: Various Math functions needs intrinsification
Reviewed-by: duke


1145   void fxch(int i = 1);
1146 
1147   void fxrstor(Address src);
1148 
1149   void fxsave(Address dst);
1150 
1151   void fyl2x();
1152   void frndint();
1153   void f2xm1();
1154   void fldl2e();
1155 
1156   void hlt();
1157 
1158   void idivl(Register src);
1159   void divl(Register src); // Unsigned division
1160 
1161   void idivq(Register src);
1162 
1163   void imull(Register dst, Register src);
1164   void imull(Register dst, Register src, int value);

1165 
1166   void imulq(Register dst, Register src);
1167   void imulq(Register dst, Register src, int value);



1168 
1169 
1170   // jcc is the generic conditional branch generator to run-
1171   // time routines, jcc is used for branches to labels. jcc
1172   // takes a branch opcode (cc) and a label (L) and generates
1173   // either a backward branch or a forward branch and links it
1174   // to the label fixup chain. Usage:
1175   //
1176   // Label L;      // unbound label
1177   // jcc(cc, L);   // forward branch to unbound label
1178   // bind(L);      // bind label to the current pc
1179   // jcc(cc, L);   // backward branch to bound label
1180   // bind(L);      // illegal: a label may be bound only once
1181   //
1182   // Note: The same Label can be used for forward and backward branches
1183   // but it may be bound only once.
1184 
1185   void jcc(Condition cc, Label& L, bool maybe_short = true);
1186 
1187   // Conditional jump to a 8-bit offset to L.




1145   void fxch(int i = 1);
1146 
1147   void fxrstor(Address src);
1148 
1149   void fxsave(Address dst);
1150 
1151   void fyl2x();
1152   void frndint();
1153   void f2xm1();
1154   void fldl2e();
1155 
1156   void hlt();
1157 
1158   void idivl(Register src);
1159   void divl(Register src); // Unsigned division
1160 
1161   void idivq(Register src);
1162 
1163   void imull(Register dst, Register src);
1164   void imull(Register dst, Register src, int value);
1165   void imull(Register dst, Address src);
1166 
1167   void imulq(Register dst, Register src);
1168   void imulq(Register dst, Register src, int value);
1169 #ifdef _LP64
1170   void imulq(Register dst, Address src);
1171 #endif
1172 
1173 
1174   // jcc is the generic conditional branch generator to run-
1175   // time routines, jcc is used for branches to labels. jcc
1176   // takes a branch opcode (cc) and a label (L) and generates
1177   // either a backward branch or a forward branch and links it
1178   // to the label fixup chain. Usage:
1179   //
1180   // Label L;      // unbound label
1181   // jcc(cc, L);   // forward branch to unbound label
1182   // bind(L);      // bind label to the current pc
1183   // jcc(cc, L);   // backward branch to bound label
1184   // bind(L);      // illegal: a label may be bound only once
1185   //
1186   // Note: The same Label can be used for forward and backward branches
1187   // but it may be bound only once.
1188 
1189   void jcc(Condition cc, Label& L, bool maybe_short = true);
1190 
1191   // Conditional jump to a 8-bit offset to L.


src/cpu/x86/vm/assembler_x86.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File