[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Jilc-patches] CVS: jilc/src ilgenerator.h,NONE,1.1 ilopcodes.c,NONE,1.1
From: |
Gopal.V <address@hidden> |
Subject: |
[Jilc-patches] CVS: jilc/src ilgenerator.h,NONE,1.1 ilopcodes.c,NONE,1.1 pewriter.h,NONE,1.1 |
Date: |
Wed, 29 May 2002 23:06:36 -0400 |
Update of /cvsroot/jilc/jilc/src
In directory subversions:/tmp/cvs-serv20087/src
Added Files:
ilgenerator.h ilopcodes.c pewriter.h
Log Message:
does this wokr ?
--- NEW FILE ---
/**
* ilgenetaor.h: Structure and method definitions for the IL bytecode
* generation.
*
* Author: Gaurav Vaish <address@hidden>
*
* (C) Gaurav Vaish, 2002
*
*/
#ifndef __JILC_ILGENERATOR_H
#define __JILC_ILGENERATOR_H
#include <defines.h>
/**
* The names and the structures given below are derived from the same/similar
* available at the mono compiler (http://www.go-mono.com)
*/
typedef struct
{
const char *name;
const char *culture;
const char *hash_value;
UInt32 hash_len;
UInt32 flags;
UInt16 major;
UInt16 minor;
UInt16 release;
UInt16 build;
} il_assembly_name;
typedef struct
{
int ref_count;
char *base_dir;
il_assembly_name name;
il_image *image;
il_image *modules;
} il_assembly;
typedef struct
{
const char *data;
UInt32 size;
} il_stream_header;
typedef struct
{
UInt32 rows;
UInt32 row_size;
/**
* Tables contain up to 9 columns and the possible sizes of the fields
in
* the documentation are 1, 2 and 4 bytes. So we can encode in 2 bits
the
* size.
*
* A 32 bit value can encode the resulting size.
*
* The top eight bits encode the number of columns in the table we only
* need 4, but 8 is aligned no shift required.
*/
UInt32 size_bitfield;
} il_table_info;
typedef struct
{
int ref_count;
FILE *fp;
char *name;
const char *assembly_name;
char *raw_metadata;
BOOL idx_string_wide;
BOOL idx_guid_wide;
BOOL idx_blob_wide;
il_stream_header heap_strings;
il_stream_header heap_us;
il_stream_header heap_blob;
il_stream_header heap_guid;
il_stream_header heap_tables;
const char *tables_base;
il_table_info tables[64];
il_assembly **references;
il_assembly *this_assembly;
} il_image;
#endif
--- NEW FILE ---
/**
* ilopcodes.c -- IL opcodes.
*
* Author: Gaurav Vaish <address@hidden>
*
* (C) Gaurav Vaish, 2002
*/
#include <ilopcodes.h>
/**
* Array of the il-opcodes that would be possible when converting
* from a java-bytecode. The list does NOT contain all opcodes.
*/
ilcode_map il_map[] = {
};
--- NEW FILE ---
/**
* pewriter.h -- Method definitions the for PE generator / IL bytecode writer.
*
* Author: Gaurav Vaish <address@hidden>
*
* (C) Gaurav Vaish : 2002
*
*/
#ifndef __JILC_PEWRITER_H
#define __JILC_PEWRITER_H
#include <stdio.h>
/*
* Methods to write the File Headers -> Metadata Root
*/
int write_magic(FILE *fp);
int write_major_version(FILE *fp);
int write_minor_version(FILE *fp);
int write_version_string(FILE *fp);
int write_stream_data(FILE *fp);
// int write_stream_data(FILE* fp, int count);
/*
* Methods to write the File Headers -> Stream Headers
*/
int write_stream_offset(FILE *fp, int offset);
int write_stream_size(FILE *fp, int size);
int write_stream_name(FILE *fp, char *name);
/*
*
*/
#endif
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Jilc-patches] CVS: jilc/src ilgenerator.h,NONE,1.1 ilopcodes.c,NONE,1.1 pewriter.h,NONE,1.1,
Gopal.V <address@hidden> <=
- Prev by Date:
[Jilc-patches] CVS: jilc/src jdasm.c,1.7,1.8 jdasm.h,1.9,1.10 jopcodes.c,1.6,1.7 jopcodes.h,1.6,1.7 jparser.c,1.5,1.6 jparser.h,1.5,1.6
- Next by Date:
[Jilc-patches] CVS: jilc AUTHORS,1.2,1.3
- Previous by thread:
[Jilc-patches] CVS: jilc/src jdasm.c,1.7,1.8 jdasm.h,1.9,1.10 jopcodes.c,1.6,1.7 jopcodes.h,1.6,1.7 jparser.c,1.5,1.6 jparser.h,1.5,1.6
- Next by thread:
[Jilc-patches] CVS: jilc AUTHORS,1.2,1.3
- Index(es):