comparison src/cpu/ppc/vm/vm_version_ppc.cpp @ 14440:41b780b43b74

8029015: PPC64 (part 216): opto: trap based null and range checks Summary: On PPC64 use tdi instruction that does a compare and raises SIGTRAP for NULL and range checks. Reviewed-by: kvn
author goetz
date Wed, 27 Nov 2013 16:16:21 -0800
parents ec28f9c041ff
children 67fa91961822
comparison
equal deleted inserted replaced
14439:50fdb38839eb 14440:41b780b43b74
75 75
76 if (!UseSIGTRAP) { 76 if (!UseSIGTRAP) {
77 MSG(TrapBasedICMissChecks); 77 MSG(TrapBasedICMissChecks);
78 MSG(TrapBasedNotEntrantChecks); 78 MSG(TrapBasedNotEntrantChecks);
79 MSG(TrapBasedNullChecks); 79 MSG(TrapBasedNullChecks);
80 MSG(TrapBasedRangeChecks);
81 FLAG_SET_ERGO(bool, TrapBasedNotEntrantChecks, false); 80 FLAG_SET_ERGO(bool, TrapBasedNotEntrantChecks, false);
82 FLAG_SET_ERGO(bool, TrapBasedNullChecks, false); 81 FLAG_SET_ERGO(bool, TrapBasedNullChecks, false);
83 FLAG_SET_ERGO(bool, TrapBasedICMissChecks, false); 82 FLAG_SET_ERGO(bool, TrapBasedICMissChecks, false);
84 FLAG_SET_ERGO(bool, TrapBasedRangeChecks, false);
85 } 83 }
86 84
87 #ifdef COMPILER2 85 #ifdef COMPILER2
86 if (!UseSIGTRAP) {
87 MSG(TrapBasedRangeChecks);
88 FLAG_SET_ERGO(bool, TrapBasedRangeChecks, false);
89 }
90
88 // On Power6 test for section size. 91 // On Power6 test for section size.
89 if (PowerArchitecturePPC64 == 6) 92 if (PowerArchitecturePPC64 == 6)
90 determine_section_size(); 93 determine_section_size();
91 // TODO: PPC port else 94 // TODO: PPC port else
92 // TODO: PPC port PdScheduling::power6SectorSize = 0x20; 95 // TODO: PPC port PdScheduling::power6SectorSize = 0x20;