NASM 0.96
[nasm/avx512.git] / eval.h
blob26bde15a5f3e54a52bf343e11f9599b188e162d6
1 /* eval.h header file for eval.c
3 * The Netwide Assembler is copyright (C) 1996 Simon Tatham and
4 * Julian Hall. All rights reserved. The software is
5 * redistributable under the licence given in the file "Licence"
6 * distributed in the NASM archive.
7 */
9 #ifndef NASM_EVAL_H
10 #define NASM_EVAL_H
13 * Called once to tell the evaluator what output format is
14 * providing segment-base details, and what function can be used to
15 * look labels up.
17 void eval_global_info (struct ofmt *output, lfunc lookup_label);
20 * Called to set the information the evaluator needs: the value of
21 * $ is set from `segment' and `offset' if `labelname' is NULL, and
22 * otherwise the name of the current line's label is set from
23 * `labelname' instead.
25 void eval_info (char *labelname, long segment, long offset);
28 * The evaluator itself.
30 expr *evaluate (scanner sc, void *scprivate, struct tokenval *tv,
31 int *fwref, int critical, efunc report_error,
32 struct eval_hints *hints);
34 #endif