view src/os_cpu/solaris_x86/vm/solaris_x86_32.ad @ 11860:762dc2f23d1c

InvokeWithException: make next successor a special begin node which has the same locationidentity as the invoke InvokeWithExceptionNode has the unpleasant property that it is a ControlSplit and MemoryCheckPoint at the same time. In terms of scheduling, a node cannot be placed after a ControlSplit node as it denotes the end of a block. Thus, instead of connecting a FloatingReadNode to the InvokeWithException node directly (as lastLocationAccess), we point rather to the BeginNode (non-exceptional case) or ExceptionBeginNode. To preserve consistency regarding memory dependencies, the former node must be also a MemoryCheckPoint.
author Bernhard Urban <bernhard.urban@jku.at>
date Wed, 02 Oct 2013 11:16:21 +0200
parents 9b8ce46870df
children
line wrap: on
line source

//
// Copyright (c) 1999, 2012, 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.
//
// This code is distributed in the hope that it will be useful, but WITHOUT
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
// version 2 for more details (a copy is included in the LICENSE file that
// accompanied this code).
//
// You should have received a copy of the GNU General Public License version
// 2 along with this work; if not, write to the Free Software Foundation,
// Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
//
// Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
// or visit www.oracle.com if you need additional information or have any
// questions.
//
//

// X86 Solaris Architecture Description File