2008-11-23 23:58:01 +00:00
|
|
|
/* Copyright (c) 2008, Avian Contributors
|
|
|
|
|
|
|
|
Permission to use, copy, modify, and/or distribute this software
|
|
|
|
for any purpose with or without fee is hereby granted, provided
|
|
|
|
that the above copyright notice and this permission notice appear
|
|
|
|
in all copies.
|
|
|
|
|
|
|
|
There is NO WARRANTY for this software. See license.txt for
|
|
|
|
details. */
|
|
|
|
|
|
|
|
#ifndef BOOTIMAGE_H
|
|
|
|
#define BOOTIMAGE_H
|
|
|
|
|
|
|
|
#include "common.h"
|
|
|
|
|
2008-11-21 23:20:35 +00:00
|
|
|
namespace vm {
|
|
|
|
|
|
|
|
class BootImage {
|
|
|
|
public:
|
|
|
|
static const unsigned Magic = 0x22377322;
|
|
|
|
|
|
|
|
unsigned magic;
|
|
|
|
|
|
|
|
unsigned heapSize;
|
|
|
|
unsigned codeSize;
|
|
|
|
|
|
|
|
unsigned loader;
|
|
|
|
unsigned stringMap;
|
|
|
|
unsigned types;
|
2008-11-23 23:58:01 +00:00
|
|
|
|
|
|
|
uintptr_t codeBase;
|
|
|
|
unsigned callTable;
|
|
|
|
unsigned methodTree;
|
|
|
|
unsigned methodTreeSentinal;
|
|
|
|
unsigned objectPools;
|
2008-11-21 23:20:35 +00:00
|
|
|
|
|
|
|
unsigned defaultThunk;
|
|
|
|
unsigned nativeThunk;
|
|
|
|
unsigned aioobThunk;
|
|
|
|
|
|
|
|
#define THUNK(s) unsigned s##Thunk;
|
|
|
|
#include "thunks.cpp"
|
|
|
|
#undef THUNK
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace vm
|
2008-11-23 23:58:01 +00:00
|
|
|
|
|
|
|
#endif//BOOTIMAGE_H
|