ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
_optimizer.c File Reference
#include "../../ugbc.h"
#include <stdarg.h>
#include <ctype.h>

Go to the source code of this file.

Data Structures

struct  _UnusedSymbol

Macros

#define DIRECT_PAGE   0x2100
#define LOOK_AHEAD   10
#define ALLOW_UNSAFE   1
#define KEEP_COMMENTS   1
#define DO_DIRECT_PAGE   1
#define DO_INLINE   1
#define DO_UNREAD   1
#define R__(X)
#define R_(X)
#define RULE   "r" R_(__LINE__) " "
#define NO_REORG   1
#define NO_DP   2
#define NO_INLINE   4
#define NO_REMOVE   8

Typedefs

typedef struct _UnusedSymbol UnusedSymbol

Functions

int isAComment (POBuffer buf)
struct var * vars_get (POBuffer _name)
void target_peephole_optimizer (Environment *_environment)
void target_finalize (Environment *_environment)

Macro Definition Documentation

◆ ALLOW_UNSAFE

#define ALLOW_UNSAFE   1

Definition at line 86 of file _optimizer.c.

◆ DIRECT_PAGE

#define DIRECT_PAGE   0x2100

Definition at line 84 of file _optimizer.c.

◆ DO_DIRECT_PAGE

#define DO_DIRECT_PAGE   1

Definition at line 89 of file _optimizer.c.

◆ DO_INLINE

#define DO_INLINE   1

Definition at line 90 of file _optimizer.c.

◆ DO_UNREAD

#define DO_UNREAD   1

Definition at line 91 of file _optimizer.c.

◆ KEEP_COMMENTS

#define KEEP_COMMENTS   1

Definition at line 87 of file _optimizer.c.

◆ LOOK_AHEAD

#define LOOK_AHEAD   10

Definition at line 85 of file _optimizer.c.

◆ NO_DP

#define NO_DP   2

Definition at line 625 of file _optimizer.c.

◆ NO_INLINE

#define NO_INLINE   4

Definition at line 626 of file _optimizer.c.

◆ NO_REMOVE

#define NO_REMOVE   8

Definition at line 627 of file _optimizer.c.

◆ NO_REORG

#define NO_REORG   1

Definition at line 624 of file _optimizer.c.

◆ R_

#define R_ ( X)
Value:
#define R__(X)
Definition _optimizer.c:142
@ X
Definition ugbc.tab.h:950

Definition at line 143 of file _optimizer.c.

◆ R__

#define R__ ( X)
Value:
#X

Definition at line 142 of file _optimizer.c.

◆ RULE

#define RULE   "r" R_(__LINE__) " "

Definition at line 144 of file _optimizer.c.

Typedef Documentation

◆ UnusedSymbol

typedef struct _UnusedSymbol UnusedSymbol

Function Documentation

◆ isAComment()

int isAComment ( POBuffer buf)

Definition at line 109 of file _optimizer.c.

◆ target_finalize()

void target_finalize ( Environment * _environment)

Definition at line 2044 of file _optimizer.c.

◆ target_peephole_optimizer()

void target_peephole_optimizer ( Environment * _environment)

Definition at line 2015 of file _optimizer.c.

◆ vars_get()

struct var * vars_get ( POBuffer _name)

Definition at line 653 of file _optimizer.c.

Variable Documentation

◆ capacity

int capacity

Definition at line 635 of file _optimizer.c.

◆ flags

int flags

Definition at line 628 of file _optimizer.c.

◆ init

char* init

Definition at line 633 of file _optimizer.c.

◆ name

char* name

Definition at line 623 of file _optimizer.c.

◆ nb_rd

int nb_rd

Definition at line 630 of file _optimizer.c.

◆ nb_wr

int nb_wr

Definition at line 631 of file _optimizer.c.

◆ offset

int offset

Definition at line 632 of file _optimizer.c.

◆ page0_max

int page0_max

Definition at line 637 of file _optimizer.c.

◆ size

int size

Definition at line 629 of file _optimizer.c.

◆ [struct]

struct { ... } ::var * tab