hotspot/src/cpu/x86/vm/globals_x86.hpp
changeset 13521 97a23be06f4e
parent 11796 746c23c00fb5
child 15114 4074553c678b
equal deleted inserted replaced
13520:a1ba7784ef54 13521:97a23be06f4e
     1 /*
     1 /*
     2  * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    76 define_pd_global(bool, UseMembar,            false);
    76 define_pd_global(bool, UseMembar,            false);
    77 #endif
    77 #endif
    78 
    78 
    79 // GC Ergo Flags
    79 // GC Ergo Flags
    80 define_pd_global(intx, CMSYoungGenPerWorker, 64*M);  // default max size of CMS young gen, per GC worker thread
    80 define_pd_global(intx, CMSYoungGenPerWorker, 64*M);  // default max size of CMS young gen, per GC worker thread
       
    81 
       
    82 #define ARCH_FLAGS(develop, product, diagnostic, experimental, notproduct) \
       
    83                                                                             \
       
    84   develop(bool, IEEEPrecision, true,                                        \
       
    85           "Enables IEEE precision (for INTEL only)")                        \
       
    86                                                                             \
       
    87   product(intx, FenceInstruction, 0,                                        \
       
    88           "(Unsafe,Unstable) Experimental")                                 \
       
    89                                                                             \
       
    90   product(intx,  ReadPrefetchInstr, 0,                                      \
       
    91           "Prefetch instruction to prefetch ahead")                         \
       
    92                                                                             \
       
    93   product(bool, UseStoreImmI16, true,                                       \
       
    94           "Use store immediate 16-bits value instruction on x86")           \
       
    95                                                                             \
       
    96   product(intx, UseAVX, 99,                                                 \
       
    97           "Highest supported AVX instructions set on x86/x64")              \
       
    98                                                                             \
       
    99   diagnostic(bool, UseIncDec, true,                                         \
       
   100           "Use INC, DEC instructions on x86")                               \
       
   101                                                                             \
       
   102   product(bool, UseNewLongLShift, false,                                    \
       
   103           "Use optimized bitwise shift left")                               \
       
   104                                                                             \
       
   105   product(bool, UseAddressNop, false,                                       \
       
   106           "Use '0F 1F [addr]' NOP instructions on x86 cpus")                \
       
   107                                                                             \
       
   108   product(bool, UseXmmLoadAndClearUpper, true,                              \
       
   109           "Load low part of XMM register and clear upper part")             \
       
   110                                                                             \
       
   111   product(bool, UseXmmRegToRegMoveAll, false,                               \
       
   112           "Copy all XMM register bits when moving value between registers") \
       
   113                                                                             \
       
   114   product(bool, UseXmmI2D, false,                                           \
       
   115           "Use SSE2 CVTDQ2PD instruction to convert Integer to Double")     \
       
   116                                                                             \
       
   117   product(bool, UseXmmI2F, false,                                           \
       
   118           "Use SSE2 CVTDQ2PS instruction to convert Integer to Float")      \
       
   119                                                                             \
       
   120   product(bool, UseUnalignedLoadStores, false,                              \
       
   121           "Use SSE2 MOVDQU instruction for Arraycopy")                      \
       
   122                                                                             \
       
   123   /* assembler */                                                           \
       
   124   product(bool, Use486InstrsOnly, false,                                    \
       
   125           "Use 80486 Compliant instruction subset")                         \
       
   126                                                                             \
       
   127   product(bool, UseCountLeadingZerosInstruction, false,                     \
       
   128           "Use count leading zeros instruction")                            \
       
   129 
    81 #endif // CPU_X86_VM_GLOBALS_X86_HPP
   130 #endif // CPU_X86_VM_GLOBALS_X86_HPP