File: obj_filesp.h

package info (click to toggle)
fis-gtm 7.1-006-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 32,908 kB
  • sloc: ansic: 344,906; asm: 5,184; csh: 4,859; sh: 2,000; awk: 294; makefile: 73; sed: 13
file content (51 lines) | stat: -rwxr-xr-x 1,406 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/****************************************************************
 *								*
 *	Copyright 2001, 2014 Fidelity Information Services, Inc	*
 *								*
 *	This source code contains the intellectual property	*
 *	of its copyright holder(s), and is made available	*
 *	under a license.  If you do not know the terms of	*
 *	the license, please stop and do not read further.	*
 *								*
 ****************************************************************/

#ifndef OBJ_FILESP_INCLUDED
#define OBJ_FILESP_INCLUDED

typedef struct linkage_entry
{
	struct linkage_entry	*next;
	struct sym_table	*symbol;
	size_t			lit_offset;	/* Offset into literal string pool where string name was stored */
} linkage_entry;

struct sym_table *define_symbol(unsigned char psect, mstr *name);
void comp_linkages(void);
void resolve_sym (void);
void output_relocation (void);
void output_symbol (void);
void buff_emit(void);
void buff_flush(void);

/* Currently JSB contains two instructions:
 * 	load %ret, -1
 * 	ret
 #	nop	# (hppa)
 */
#if defined(__ia64)
#  define JSB_ACTION_N_INS	4
#elif defined(__hpux)
#  define JSB_ACTION_N_INS	3
#elif defined(__x86_64__)
#  define JSB_ACTION_N_INS	8
#elif defined(__sparc)
#  define JSB_ACTION_N_INS	3
#elif defined(__mvs__) || defined(Linux390)
#  define JSB_ACTION_N_INS	4
#else
#  define JSB_ACTION_N_INS	2
#endif
#define JSB_MARKER		"GTM_CODE"
#define MIN_LINK_PSECT_SIZE	0

#endif