comparison src/share/vm/compiler/disassembler.cpp @ 17937:78bbf4d43a14

8037816: Fix for 8036122 breaks build with Xcode5/clang 8043029: Change 8037816 breaks HS build with older GCC versions which don't support diagnostic pragmas 8043164: Format warning in traceStream.hpp Summary: Backport of main fix + two corrections, enables clang compilation, turns on format attributes, corrects/mutes warnings Reviewed-by: kvn, coleenp, iveresov, twisti
author drchase
date Thu, 22 May 2014 15:52:41 -0400
parents 55fb97c4c58d
children 52b4284cb496 094cbdffa87d
comparison
equal deleted inserted replaced
17935:7384f6a12fc1 17937:78bbf4d43a14
1 /* 1 /*
2 * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2008, 2014, 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.
49 #endif 49 #endif
50 #ifdef SHARK 50 #ifdef SHARK
51 #include "shark/sharkEntry.hpp" 51 #include "shark/sharkEntry.hpp"
52 #endif 52 #endif
53 53
54 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
55
54 void* Disassembler::_library = NULL; 56 void* Disassembler::_library = NULL;
55 bool Disassembler::_tried_to_load_library = false; 57 bool Disassembler::_tried_to_load_library = false;
56 58
57 // This routine is in the shared library: 59 // This routine is in the shared library:
58 Disassembler::decode_func_virtual Disassembler::_decode_instructions_virtual = NULL; 60 Disassembler::decode_func_virtual Disassembler::_decode_instructions_virtual = NULL;
409 static void* event_to_env(void* env_pv, const char* event, void* arg) { 411 static void* event_to_env(void* env_pv, const char* event, void* arg) {
410 decode_env* env = (decode_env*) env_pv; 412 decode_env* env = (decode_env*) env_pv;
411 return env->handle_event(event, (address) arg); 413 return env->handle_event(event, (address) arg);
412 } 414 }
413 415
416 ATTRIBUTE_PRINTF(2, 3)
414 static int printf_to_env(void* env_pv, const char* format, ...) { 417 static int printf_to_env(void* env_pv, const char* format, ...) {
415 decode_env* env = (decode_env*) env_pv; 418 decode_env* env = (decode_env*) env_pv;
416 outputStream* st = env->output(); 419 outputStream* st = env->output();
417 size_t flen = strlen(format); 420 size_t flen = strlen(format);
418 const char* raw = NULL; 421 const char* raw = NULL;