Mercurial > hg > truffle
comparison src/share/vm/opto/c2_globals.hpp @ 6633:a5dd6e3ef9f3
6677625: Move platform specific flags from globals.hpp to globals_<arch>.hpp
Reviewed-by: kvn, dholmes, coleenp
Contributed-by: Tao Mao <tao.mao@oracle.com>
author | twisti |
---|---|
date | Mon, 27 Aug 2012 15:17:17 -0700 |
parents | 6f8f439e247d |
children | 9d89c76b0505 |
comparison
equal
deleted
inserted
replaced
6632:a1c7f6472621 | 6633:a5dd6e3ef9f3 |
---|---|
351 "Attempt to compile while subsuming loads into machine instructions.") \ | 351 "Attempt to compile while subsuming loads into machine instructions.") \ |
352 \ | 352 \ |
353 develop(bool, StressRecompilation, false, \ | 353 develop(bool, StressRecompilation, false, \ |
354 "Recompile each compiled method without subsuming loads or escape analysis.") \ | 354 "Recompile each compiled method without subsuming loads or escape analysis.") \ |
355 \ | 355 \ |
356 /* controls for tier 1 compilations */ \ | |
357 \ | |
358 develop(bool, Tier1CountInvocations, true, \ | |
359 "Generate code, during tier 1, to update invocation counter") \ | |
360 \ | |
361 product(intx, Tier1Inline, false, \ | |
362 "enable inlining during tier 1") \ | |
363 \ | |
364 product(intx, Tier1MaxInlineSize, 8, \ | |
365 "maximum bytecode size of a method to be inlined, during tier 1") \ | |
366 \ | |
367 product(intx, Tier1FreqInlineSize, 35, \ | |
368 "max bytecode size of a frequent method to be inlined, tier 1") \ | |
369 \ | |
370 develop(intx, ImplicitNullCheckThreshold, 3, \ | 356 develop(intx, ImplicitNullCheckThreshold, 3, \ |
371 "Don't do implicit null checks if NPE's in a method exceeds limit") \ | 357 "Don't do implicit null checks if NPE's in a method exceeds limit") \ |
372 \ | |
373 /* controls for loop optimization */ \ | |
374 product(intx, Tier1LoopOptsCount, 0, \ | |
375 "Set level of loop optimization for tier 1 compiles") \ | |
376 \ | 358 \ |
377 product(intx, LoopOptsCount, 43, \ | 359 product(intx, LoopOptsCount, 43, \ |
378 "Set level of loop optimization for tier 1 compiles") \ | 360 "Set level of loop optimization for tier 1 compiles") \ |
379 \ | 361 \ |
380 /* controls for heat-based inlining */ \ | 362 /* controls for heat-based inlining */ \ |
503 "Miniumum %% of a successor (predecessor) for which block layout "\ | 485 "Miniumum %% of a successor (predecessor) for which block layout "\ |
504 "a will allow a fork (join) in a single chain") \ | 486 "a will allow a fork (join) in a single chain") \ |
505 \ | 487 \ |
506 product(bool, BlockLayoutRotateLoops, true, \ | 488 product(bool, BlockLayoutRotateLoops, true, \ |
507 "Allow back branches to be fall throughs in the block layour") \ | 489 "Allow back branches to be fall throughs in the block layour") \ |
490 \ | |
491 develop(bool, InlineReflectionGetCallerClass, true, \ | |
492 "inline sun.reflect.Reflection.getCallerClass(), known to be part "\ | |
493 "of base library DLL") \ | |
494 \ | |
495 develop(bool, InlineObjectCopy, true, \ | |
496 "inline Object.clone and Arrays.copyOf[Range] intrinsics") \ | |
497 \ | |
498 develop(bool, SpecialStringCompareTo, true, \ | |
499 "special version of string compareTo") \ | |
500 \ | |
501 develop(bool, SpecialStringIndexOf, true, \ | |
502 "special version of string indexOf") \ | |
503 \ | |
504 develop(bool, SpecialStringEquals, true, \ | |
505 "special version of string equals") \ | |
506 \ | |
507 develop(bool, SpecialArraysEquals, true, \ | |
508 "special version of Arrays.equals(char[],char[])") \ | |
509 \ | |
510 develop(bool, BailoutToInterpreterForThrows, false, \ | |
511 "Compiled methods which throws/catches exceptions will be " \ | |
512 "deopt and intp.") \ | |
513 \ | |
514 develop(bool, ConvertCmpD2CmpF, true, \ | |
515 "Convert cmpD to cmpF when one input is constant in float range") \ | |
516 \ | |
517 develop(bool, ConvertFloat2IntClipping, true, \ | |
518 "Convert float2int clipping idiom to integer clipping") \ | |
519 \ | |
520 develop(bool, Use24BitFPMode, true, \ | |
521 "Set 24-bit FPU mode on a per-compile basis ") \ | |
522 \ | |
523 develop(bool, Use24BitFP, true, \ | |
524 "use FP instructions that produce 24-bit precise results") \ | |
525 \ | |
526 develop(bool, MonomorphicArrayCheck, true, \ | |
527 "Uncommon-trap array store checks that require full type check") \ | |
528 \ | |
529 notproduct(bool, TracePhaseCCP, false, \ | |
530 "Print progress during Conditional Constant Propagation") \ | |
531 \ | |
532 develop(bool, PrintDominators, false, \ | |
533 "Print out dominator trees for GVN") \ | |
534 \ | |
535 notproduct(bool, TraceSpilling, false, \ | |
536 "Trace spilling") \ | |
537 \ | |
538 notproduct(bool, TraceTypeProfile, false, \ | |
539 "Trace type profile") \ | |
540 \ | |
541 develop(bool, PoisonOSREntry, true, \ | |
542 "Detect abnormal calls to OSR code") \ | |
543 \ | |
544 product(bool, UseCondCardMark, false, \ | |
545 "Check for already marked card before updating card table") \ | |
546 \ | |
547 develop(bool, SoftMatchFailure, trueInProduct, \ | |
548 "If the DFA fails to match a node, print a message and bail out") \ | |
549 \ | |
550 develop(bool, InlineAccessors, true, \ | |
551 "inline accessor methods (get/set)") \ | |
552 \ | |
553 product(intx, TypeProfileMajorReceiverPercent, 90, \ | |
554 "% of major receiver type to all profiled receivers") \ | |
555 \ | |
556 notproduct(bool, TimeCompiler2, false, \ | |
557 "detailed time the compiler (requires +TimeCompiler)") \ | |
558 \ | |
559 diagnostic(bool, PrintIntrinsics, false, \ | |
560 "prints attempted and successful inlining of intrinsics") \ | |
561 \ | |
562 diagnostic(ccstrlist, DisableIntrinsic, "", \ | |
563 "do not expand intrinsics whose (internal) names appear here") \ | |
564 \ | |
565 develop(bool, StressReflectiveCode, false, \ | |
566 "Use inexact types at allocations, etc., to test reflection") \ | |
567 \ | |
568 diagnostic(bool, DebugInlinedCalls, true, \ | |
569 "If false, restricts profiled locations to the root method only") \ | |
570 \ | |
571 notproduct(bool, VerifyLoopOptimizations, false, \ | |
572 "verify major loop optimizations") \ | |
573 \ | |
574 diagnostic(bool, ProfileDynamicTypes, true, \ | |
575 "do extra type profiling and use it more aggressively") \ | |
576 \ | |
577 develop(bool, TraceIterativeGVN, false, \ | |
578 "Print progress during Iterative Global Value Numbering") \ | |
579 \ | |
580 develop(bool, VerifyIterativeGVN, false, \ | |
581 "Verify Def-Use modifications during sparse Iterative Global " \ | |
582 "Value Numbering") \ | |
583 \ | |
584 notproduct(bool, TraceCISCSpill, false, \ | |
585 "Trace allocators use of cisc spillable instructions") \ | |
586 \ | |
587 product(bool, SplitIfBlocks, true, \ | |
588 "Clone compares and control flow through merge points to fold " \ | |
589 "some branches") \ | |
590 \ | |
591 develop(intx, FreqCountInvocations, 1, \ | |
592 "Scaling factor for branch frequencies (deprecated)") \ | |
593 \ | |
594 product(intx, AliasLevel, 3, \ | |
595 "0 for no aliasing, 1 for oop/field/static/array split, " \ | |
596 "2 for class split, 3 for unique instances") \ | |
597 \ | |
598 develop(bool, VerifyAliases, false, \ | |
599 "perform extra checks on the results of alias analysis") \ | |
508 | 600 |
509 C2_FLAGS(DECLARE_DEVELOPER_FLAG, DECLARE_PD_DEVELOPER_FLAG, DECLARE_PRODUCT_FLAG, DECLARE_PD_PRODUCT_FLAG, DECLARE_DIAGNOSTIC_FLAG, DECLARE_EXPERIMENTAL_FLAG, DECLARE_NOTPRODUCT_FLAG) | 601 C2_FLAGS(DECLARE_DEVELOPER_FLAG, DECLARE_PD_DEVELOPER_FLAG, DECLARE_PRODUCT_FLAG, DECLARE_PD_PRODUCT_FLAG, DECLARE_DIAGNOSTIC_FLAG, DECLARE_EXPERIMENTAL_FLAG, DECLARE_NOTPRODUCT_FLAG) |
510 | 602 |
511 #endif // SHARE_VM_OPTO_C2_GLOBALS_HPP | 603 #endif // SHARE_VM_OPTO_C2_GLOBALS_HPP |