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

Go to the source code of this file.

Macros

#define DIRECT_PAGE   0x2100
#define LOOK_AHEAD   5
#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

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 85 of file _optimizer.c.

◆ DIRECT_PAGE

#define DIRECT_PAGE   0x2100

Definition at line 83 of file _optimizer.c.

◆ DO_DIRECT_PAGE

#define DO_DIRECT_PAGE   1

Definition at line 88 of file _optimizer.c.

◆ DO_INLINE

#define DO_INLINE   1

Definition at line 89 of file _optimizer.c.

◆ DO_UNREAD

#define DO_UNREAD   1

Definition at line 90 of file _optimizer.c.

◆ KEEP_COMMENTS

#define KEEP_COMMENTS   1

Definition at line 86 of file _optimizer.c.

◆ LOOK_AHEAD

#define LOOK_AHEAD   5

Definition at line 84 of file _optimizer.c.

◆ NO_DP

#define NO_DP   2

Definition at line 411 of file _optimizer.c.

◆ NO_INLINE

#define NO_INLINE   4

Definition at line 412 of file _optimizer.c.

◆ NO_REMOVE

#define NO_REMOVE   8

Definition at line 413 of file _optimizer.c.

◆ NO_REORG

#define NO_REORG   1

Definition at line 410 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 142 of file _optimizer.c.

◆ R__

#define R__ ( X)
Value:
#X

Definition at line 141 of file _optimizer.c.

◆ RULE

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

Definition at line 143 of file _optimizer.c.

Function Documentation

◆ isAComment()

int isAComment ( POBuffer buf)

Definition at line 108 of file _optimizer.c.

◆ target_finalize()

void target_finalize ( Environment * _environment)

Definition at line 808 of file _optimizer.c.

◆ target_peephole_optimizer()

void target_peephole_optimizer ( Environment * _environment)

Definition at line 785 of file _optimizer.c.

◆ vars_get()

struct var * vars_get ( POBuffer _name)

Definition at line 439 of file _optimizer.c.

Variable Documentation

◆ capacity

int capacity

Definition at line 421 of file _optimizer.c.

◆ flags

int flags

Definition at line 414 of file _optimizer.c.

◆ init

char* init

Definition at line 419 of file _optimizer.c.

◆ name

char* name

Definition at line 409 of file _optimizer.c.

◆ nb_rd

int nb_rd

Definition at line 416 of file _optimizer.c.

◆ nb_wr

int nb_wr

Definition at line 417 of file _optimizer.c.

◆ offset

int offset

Definition at line 418 of file _optimizer.c.

◆ page0_max

int page0_max

Definition at line 423 of file _optimizer.c.

◆ size

int size

Definition at line 415 of file _optimizer.c.

◆ [struct]

struct { ... } ::var * tab