src/share/vm/libadt/vectset.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot-comp Cdiff src/share/vm/libadt/vectset.hpp

src/share/vm/libadt/vectset.hpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 147,156 **** --- 147,164 ---- uint32 mask = 1L << (elem & 31); // Get bit mask data[word] |= mask; // Set bit } } + // Fast inlined remove + void remove( uint elem ) { + uint word = elem >> 5; // Get the longword offset + if( word < size ) { + uint32 mask = 1L << (elem & 31); // Get bit mask + data[word] &= ~mask; // Clear bit + } + } private: SetI_ *iterate(uint&) const; };
src/share/vm/libadt/vectset.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File