1// Copyright 2014 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5/*
6 * Plan 9 a.out constants and data structures
7 */
8
9package plan9obj
10
11// Plan 9 Program header.
12type prog struct {
13	Magic uint32 /* magic number */
14	Text  uint32 /* size of text segment */
15	Data  uint32 /* size of initialized data */
16	Bss   uint32 /* size of uninitialized data */
17	Syms  uint32 /* size of symbol table */
18	Entry uint32 /* entry point */
19	Spsz  uint32 /* size of pc/sp offset table */
20	Pcsz  uint32 /* size of pc/line number table */
21}
22
23// Plan 9 symbol table entries.
24type sym struct {
25	value uint64
26	typ   byte
27	name  []byte
28}
29
30const (
31	Magic64 = 0x8000 // 64-bit expanded header
32
33	Magic386   = (4*11+0)*11 + 7
34	MagicAMD64 = (4*26+0)*26 + 7 + Magic64
35	MagicARM   = (4*20+0)*20 + 7
36)
37