mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
2.8 KiB
45 lines
2.8 KiB
/*
|
|
* Used by makefile to generate OFFSETS.I for ASM source files.
|
|
*
|
|
* Also creates some constants for tables.
|
|
*
|
|
* Outputs offsets into the context structure.
|
|
*/
|
|
#include "decoder.h"
|
|
#include <stdio.h>
|
|
|
|
t_decoder_context p;
|
|
|
|
void main(void)
|
|
{
|
|
printf("MAIN_TREE_TABLE_BITS EQU %d\n", MAIN_TREE_TABLE_BITS);
|
|
printf("MAIN_TREE_TABLE_ELEMENTS EQU %d\n", 1 << MAIN_TREE_TABLE_BITS);
|
|
printf("SECONDARY_LEN_TREE_TABLE_BITS EQU %d\n", SECONDARY_LEN_TREE_TABLE_BITS);
|
|
printf("SECONDARY_TREE_TABLE_ELEMENTS EQU %d\n", 1 << SECONDARY_LEN_TREE_TABLE_BITS);
|
|
printf("NUM_SECONDARY_LENGTHS EQU %d\n", NUM_SECONDARY_LENGTHS);
|
|
printf("ALIGNED_TABLE_ELEMENTS EQU %d\n", 1 << ALIGNED_TABLE_BITS);
|
|
printf("ALIGNED_NUM_ELEMENTS EQU %d\n", ALIGNED_NUM_ELEMENTS);
|
|
|
|
printf("OFF_MEM_WINDOW EQU %d\n", (byte *) &p.dec_mem_window - (byte *) &p);
|
|
printf("OFF_WINDOW_SIZE EQU %d\n", (byte *) &p.dec_window_size - (byte *) &p);
|
|
printf("OFF_WINDOW_MASK EQU %d\n", (byte *) &p.dec_window_mask - (byte *) &p);
|
|
printf("OFF_LAST_MATCHPOS_OFFSET EQU %d\n", (byte *) &p.dec_last_matchpos_offset[0] - (byte *) &p);
|
|
printf("OFF_MAIN_TREE_TABLE EQU %d\n", (byte *) &p.dec_main_tree_table[0] - (byte *) &p);
|
|
printf("OFF_SECONDARY_TREE_TABLE EQU %d\n", (byte *) &p.dec_secondary_length_tree_table[0] - (byte *) &p);
|
|
printf("OFF_MAIN_TREE_LEN EQU %d\n", (byte *) &p.dec_main_tree_len[0] - (byte *) &p);
|
|
printf("OFF_SECONDARY_TREE_LEN EQU %d\n", (byte *) &p.dec_secondary_length_tree_len[0] - (byte *) &p);
|
|
printf("OFF_ALIGNED_TABLE EQU %d\n", (byte *) &p.dec_aligned_table[0] - (byte *) &p);
|
|
printf("OFF_ALIGNED_LEN EQU %d\n", (byte *) &p.dec_aligned_len[0] - (byte *) &p);
|
|
printf("OFF_MAIN_TREE_LEFTRIGHT EQU %d\n", (byte *) &p.dec_main_tree_left_right[0] - (byte *) &p);
|
|
printf("OFF_SECONDARY_TREE_LEFTRIGHT EQU %d\n", (byte *) &p.dec_secondary_length_tree_left_right[0] - (byte *) &p);
|
|
printf("OFF_INPUT_CURPOS EQU %d\n", (byte *) &p.dec_input_curpos - (byte *) &p);
|
|
printf("OFF_INPUT_ENDPOS EQU %d\n", (byte *) &p.dec_end_input_pos - (byte *) &p);
|
|
printf("OFF_MAIN_TREE_PREV_LEN EQU %d\n", (byte *) &p.dec_main_tree_prev_len[0] - (byte *) &p);
|
|
printf("OFF_SECONDARY_TREE_PREV_LEN EQU %d\n", (byte *) &p.dec_secondary_length_tree_prev_len[0] - (byte *) &p);
|
|
printf("OFF_BITBUF EQU %d\n", (byte *) &p.dec_bitbuf - (byte *) &p);
|
|
printf("OFF_BITCOUNT EQU %d\n", (byte *) &p.dec_bitcount - (byte *) &p);
|
|
printf("OFF_NUM_POSITION_SLOTS EQU %d\n", (byte *) &p.dec_num_position_slots - (byte *) &p);
|
|
printf("OFF_BUFPOS EQU %d\n", (byte *) &p.dec_bufpos - (byte *) &p);
|
|
|
|
exit(0);
|
|
}
|