108 product(intx, SetFSFOFN, 999, \ |
108 product(intx, SetFSFOFN, 999, \ |
109 "Set the FS/FO/FN bits in FCSR" \ |
109 "Set the FS/FO/FN bits in FCSR" \ |
110 "999 means FS/FO/FN will not be changed" \ |
110 "999 means FS/FO/FN will not be changed" \ |
111 "=XYZ, with X:FS, Y:FO, Z:FN, X, Y and Z in 0=off, 1=on") \ |
111 "=XYZ, with X:FS, Y:FO, Z:FN, X, Y and Z in 0=off, 1=on") \ |
112 \ |
112 \ |
113 product(intx, FenceInstruction, 0, \ |
|
114 "(Unsafe,Unstable) Experimental") \ |
|
115 \ |
|
116 product(intx, ReadPrefetchInstr, 0, \ |
|
117 "Prefetch instruction to prefetch ahead") \ |
|
118 \ |
|
119 product(bool, UseStoreImmI16, true, \ |
|
120 "Use store immediate 16-bits value instruction on x86") \ |
|
121 \ |
|
122 product(intx, UseAVX, 99, \ |
|
123 "Highest supported AVX instructions set on x86/x64") \ |
|
124 \ |
|
125 diagnostic(bool, UseIncDec, true, \ |
|
126 "Use INC, DEC instructions on x86") \ |
|
127 \ |
|
128 product(bool, UseNewLongLShift, false, \ |
|
129 "Use optimized bitwise shift left") \ |
|
130 \ |
|
131 product(bool, UseAddressNop, false, \ |
|
132 "Use '0F 1F [addr]' NOP instructions on x86 cpus") \ |
|
133 \ |
|
134 product(bool, UseXmmLoadAndClearUpper, true, \ |
|
135 "Load low part of XMM register and clear upper part") \ |
|
136 \ |
|
137 product(bool, UseXmmRegToRegMoveAll, false, \ |
|
138 "Copy all XMM register bits when moving value between registers") \ |
|
139 \ |
|
140 product(bool, UseXmmI2D, false, \ |
|
141 "Use SSE2 CVTDQ2PD instruction to convert Integer to Double") \ |
|
142 \ |
|
143 product(bool, UseXmmI2F, false, \ |
|
144 "Use SSE2 CVTDQ2PS instruction to convert Integer to Float") \ |
|
145 \ |
|
146 product(bool, UseUnalignedLoadStores, false, \ |
|
147 "Use SSE2 MOVDQU instruction for Arraycopy") \ |
|
148 \ |
|
149 /* assembler */ \ |
113 /* assembler */ \ |
150 product(bool, Use486InstrsOnly, false, \ |
|
151 "Use 80486 Compliant instruction subset") \ |
|
152 \ |
|
153 product(bool, UseCountLeadingZerosInstructionMIPS64, true, \ |
114 product(bool, UseCountLeadingZerosInstructionMIPS64, true, \ |
154 "Use count leading zeros instruction") \ |
115 "Use count leading zeros instruction") \ |
155 \ |
116 \ |
156 product(bool, UseCountTrailingZerosInstructionMIPS64, false, \ |
117 product(bool, UseCountTrailingZerosInstructionMIPS64, false, \ |
157 "Use count trailing zeros instruction") |
118 "Use count trailing zeros instruction") |