14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 * 23 */ 24 25 #include "precompiled.hpp" 26 #include "jvm.h" 27 #include "jimage.hpp" 28 #include "classfile/classListParser.hpp" 29 #include "classfile/classLoaderExt.hpp" 30 #include "classfile/sharedClassUtil.hpp" 31 #include "classfile/symbolTable.hpp" 32 #include "classfile/systemDictionary.hpp" 33 #include "classfile/systemDictionaryShared.hpp" 34 #include "memory/metaspaceShared.hpp" 35 #include "memory/resourceArea.hpp" 36 #include "runtime/fieldType.hpp" 37 #include "runtime/handles.inline.hpp" 38 #include "runtime/javaCalls.hpp" 39 #include "utilities/defaultStream.hpp" 40 #include "utilities/hashtable.inline.hpp" 41 #include "utilities/macros.hpp" 42 43 ClassListParser* ClassListParser::_instance = NULL; 44 45 ClassListParser::ClassListParser(const char* file) { 46 assert(_instance == NULL, "must be singleton"); 47 _instance = this; 48 _classlist_file = file; 49 _file = fopen(file, "r"); 50 _line_no = 0; 51 _interfaces = new (ResourceObj::C_HEAP, mtClass) GrowableArray<int>(10, true); 52 53 if (_file == NULL) { | 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 * 23 */ 24 25 #include "precompiled.hpp" 26 #include "jvm.h" 27 #include "jimage.hpp" 28 #include "classfile/classListParser.hpp" 29 #include "classfile/classLoaderExt.hpp" 30 #include "classfile/sharedClassUtil.hpp" 31 #include "classfile/symbolTable.hpp" 32 #include "classfile/systemDictionary.hpp" 33 #include "classfile/systemDictionaryShared.hpp" 34 #include "logging/log.hpp" 35 #include "logging/logTag.hpp" 36 #include "memory/metaspaceShared.hpp" 37 #include "memory/resourceArea.hpp" 38 #include "runtime/fieldType.hpp" 39 #include "runtime/handles.inline.hpp" 40 #include "runtime/javaCalls.hpp" 41 #include "utilities/defaultStream.hpp" 42 #include "utilities/hashtable.inline.hpp" 43 #include "utilities/macros.hpp" 44 45 ClassListParser* ClassListParser::_instance = NULL; 46 47 ClassListParser::ClassListParser(const char* file) { 48 assert(_instance == NULL, "must be singleton"); 49 _instance = this; 50 _classlist_file = file; 51 _file = fopen(file, "r"); 52 _line_no = 0; 53 _interfaces = new (ResourceObj::C_HEAP, mtClass) GrowableArray<int>(10, true); 54 55 if (_file == NULL) { |