Main Page | Namespace List | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

cfmsgs.c File Reference


Detailed Description

Error message for class file functions.

For structure packing mismatches, sprintf requests have been moved to functions in stdio.c

Control

$URL: https://svn.apache.org/path/name/cfmsgs.c $ $Id: cfmsgs.c 0 09/28/2005 dlydick $

Copyright 2005 The Apache Software Foundation or its licensors, as applicable.

Licensed under the Apache License, Version 2.0 ("the License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and limitations under the License.

Version:
$LastChangedRevision: 0 $
Date:
$LastChangedDate: 09/28/2005 $
Author:
$LastChangedBy: dlydick $ Original code contributed by Daniel Lydick on 09/28/2005.

Reference

Definition in file cfmsgs.c.

#include "arch.h"
#include "jvmcfg.h"
#include "cfmacros.h"
#include "classfile.h"
#include "util.h"

Go to the source code of this file.

Functions

rvoid cfmsgs_atrmsg (rchar *fn, ClassFile *pcfs, attribute_info_dup *atr)
 Display details of what an attribute entry contains.
static void cfmsgs_c_dummy (void)
rvoid cfmsgs_show_constant_pool (ClassFile *pcfs)
 Show all entries in the constant pool.
rvoid cfmsgs_typemsg (rchar *fn, ClassFile *pcfs, jvm_constant_pool_index cpidx)
 Display details of what an constant_pool entry contains.

Variables

static char * cfmsgs_c_copyright = "\0" "$URL: https://svn.apache.org/path/name/cfmsgs.c $ $Id: cfmsgs.c 0 09/28/2005 dlydick $" " " "Copyright 2005 The Apache Software Foundation or its licensors, as applicable."


Function Documentation

static void cfmsgs_c_dummy void   )  [static]
 

Definition at line 44 of file cfmsgs.c.

rvoid cfmsgs_typemsg rchar fn,
ClassFile pcfs,
jvm_constant_pool_index  cpidx
 

Display details of what an constant_pool entry contains.

Parameters:
fn Function name message for sysErrMsg()
pcfs ClassFile structure containing constant_pool info
cpidx Index into constant_pool[] to report
Returns:
rvoid The pcfs->constant_pool must be valid for this to produce any meaningful results.
< References java.lang.Object todo 22

< Convenient alias for DML5

< Convenient size for any stdio msg

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

Todo:
Above logic works, 64-bitlogic below needs testing:
Todo:
Make format string properly reflect 64-bit int
< Convenient alias for DML5

Todo:
Above logic works, 64-bit logic below needs testing:
< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

Definition at line 67 of file cfmsgs.c.

References CONSTANT_Class, CONSTANT_CP_DEFAULT_INDEX, CONSTANT_Double, CONSTANT_Fieldref, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodref, CONSTANT_Long, CONSTANT_Methodref, CONSTANT_NameAndType, CONSTANT_String, CONSTANT_Utf8, CP1_NAME_STRLEN, CP2_CLASS_NAME_STRLEN, CP_TAG, CP_THIS_STRLEN, DMLNORM, GETRI4, GETRL8, HEAP_FREE_DATA, HEAP_GET_DATA, jvm_class_index_null, JVMCFG_STDIO_BFR, PTR_CP1_NAME_STRNAME, PTR_CP2_CLASS_NAME_STRNAME, PTR_CP_ENTRY_TYPE, PTR_CP_THIS_STRNAME, rfalse, sprintfLocal(), sysDbgMsg(), and ClassFile::this_class.

Referenced by cfattrib_loadattribute(), and classfile_loadclassdata().

rvoid cfmsgs_show_constant_pool ClassFile pcfs  ) 
 

Show all entries in the constant pool.

Parameters:
pcfs ClassFile to dump contents
Returns:
rvoid
< Ref first constant item

< Ref first constant item

Definition at line 514 of file cfmsgs.c.

Referenced by classfile_loadclassdata(), and linkage_resolve_class().

rvoid cfmsgs_atrmsg rchar fn,
ClassFile pcfs,
attribute_info_dup atr
 

Display details of what an attribute entry contains.

Parameters:
fn Function name message for sysErrMsg()
pcfs ClassFile to dump contents
atr Pointer to an attribute area. WARNING: This pointer MUST be 4-byte aligned to suppress SIGSEGV. Such logic is already taken care of by virtue of it being an (attribute_info_dup *) type instead of as (attribute_info *). This processing happens in cfattrib_loadattribute() after reading an attribute from the class file and storing it into the heap, which is properly aligned.
Returns:
rvoid The atr->ai.attribute_index constant_pool entry must be valid for this to produce any meaningful results.
< Convenient size for any stdio msg

Todo:
Verify (jlong) retrieval of bytes for both -m32 and -m64 compilations.
Todo:
Above logic works, logic below needs testing:
Todo:
Make format string properly reflect 64-bit (rlong)/(jlong)
< Convenient alias for DML5

Todo:
Verify (jfloat) retrieval of bytes for both -m32 and -m64 compilations.
< Convenient alias for DML5

Todo:
Verify (jdouble) retrieval of bytes for both -m32 and -m64 compilations.
Todo:
Above logic works, 64-bit logic below needs testing:
Todo:
Make format string properly reflect 64-bit (double)/(jdouble)
< Convenient alias for DML5

Todo:
Verify (jint) retrieval of bytes for both -m32 and -m64 compilations.
< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Not in spec

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Convenient alias for DML5

< Not in spec

Definition at line 558 of file cfmsgs.c.


Variable Documentation

char* cfmsgs_c_copyright = "\0" "$URL: https://svn.apache.org/path/name/cfmsgs.c $ $Id: cfmsgs.c 0 09/28/2005 dlydick $" " " "Copyright 2005 The Apache Software Foundation or its licensors, as applicable." [static]
 

Definition at line 44 of file cfmsgs.c.


Generated on Fri Sep 30 18:59:55 2005 by  doxygen 1.4.4