comparison src/share/vm/prims/forte.cpp @ 14909:4ca6dc0799b6

Backout jdk9 merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Apr 2014 13:57:07 +0200
parents abec000618bf
children 89152779163c
comparison
equal deleted inserted replaced
14908:8db6e76cb658 14909:4ca6dc0799b6
1 /* 1 /*
2 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2003, 2012, 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.
69 //------------------------------------------------------- 69 //-------------------------------------------------------
70 70
71 // Native interfaces for use by Forte tools. 71 // Native interfaces for use by Forte tools.
72 72
73 73
74 #if !defined(IA64) && !defined(PPC64) 74 #ifndef IA64
75 75
76 class vframeStreamForte : public vframeStreamCommon { 76 class vframeStreamForte : public vframeStreamCommon {
77 public: 77 public:
78 // constructor that starts with sender of frame fr (top_frame) 78 // constructor that starts with sender of frame fr (top_frame)
79 vframeStreamForte(JavaThread *jt, frame fr, bool stop_at_java_call_stub); 79 vframeStreamForte(JavaThread *jt, frame fr, bool stop_at_java_call_stub);
611 // Because it is weakly bound, the calls become NOP's when the library 611 // Because it is weakly bound, the calls become NOP's when the library
612 // isn't present. 612 // isn't present.
613 #ifdef __APPLE__ 613 #ifdef __APPLE__
614 // XXXDARWIN: Link errors occur even when __attribute__((weak_import)) 614 // XXXDARWIN: Link errors occur even when __attribute__((weak_import))
615 // is added 615 // is added
616 #define collector_func_load(x0,x1,x2,x3,x4,x5,x6) ((void) 0) 616 #define collector_func_load(x0,x1,x2,x3,x4,x5,x6) (0)
617 #else 617 #else
618 void collector_func_load(char* name, 618 void collector_func_load(char* name,
619 void* null_argument_1, 619 void* null_argument_1,
620 void* null_argument_2, 620 void* null_argument_2,
621 void *vaddr, 621 void *vaddr,
627 ( collector_func_load ? collector_func_load(x0,x1,x2,x3,x4,x5,x6),(void)0 : (void)0 ) 627 ( collector_func_load ? collector_func_load(x0,x1,x2,x3,x4,x5,x6),(void)0 : (void)0 )
628 #endif // __APPLE__ 628 #endif // __APPLE__
629 #endif // !_WINDOWS 629 #endif // !_WINDOWS
630 630
631 } // end extern "C" 631 } // end extern "C"
632 #endif // !IA64 && !PPC64 632 #endif // !IA64
633 633
634 void Forte::register_stub(const char* name, address start, address end) { 634 void Forte::register_stub(const char* name, address start, address end) {
635 #if !defined(_WINDOWS) && !defined(IA64) && !defined(PPC64) 635 #if !defined(_WINDOWS) && !defined(IA64)
636 assert(pointer_delta(end, start, sizeof(jbyte)) < INT_MAX, 636 assert(pointer_delta(end, start, sizeof(jbyte)) < INT_MAX,
637 "Code size exceeds maximum range"); 637 "Code size exceeds maximum range");
638 638
639 collector_func_load((char*)name, NULL, NULL, start, 639 collector_func_load((char*)name, NULL, NULL, start,
640 pointer_delta(end, start, sizeof(jbyte)), 0, NULL); 640 pointer_delta(end, start, sizeof(jbyte)), 0, NULL);
641 #endif // !_WINDOWS && !IA64 && !PPC64 641 #endif // !_WINDOWS && !IA64
642 } 642 }
643 643
644 #else // INCLUDE_JVMTI 644 #else // INCLUDE_JVMTI
645 extern "C" { 645 extern "C" {
646 JNIEXPORT 646 JNIEXPORT