Cx51 User's Guide

FIXXC800 Compiler Directive

Abbreviation

FXC8

Arguments

None.

Default

Compiler generates code that may contain MOV dir,dir with two special function registers.

µVision

Options — C51 — Misc Controls.

Description

The FIXXC800 directive prevents from creating code that contains MOV dir,dir with two special function registers (i.e. MOV P1,B). This directive is implemented to bypass chip problems on some XC800 device variants. Refer to the errata sheet of your device for more information.

Example
sfr X1=0x91;
sfr X2=0xA2;
sfr16 Y1=0xFA;

unsigned int j;
char c;
void main (void) {
  X1 = X2;           // by default creates MOV X1,X2
  Y1 = X1 * 12;      // by default creates MOV Y1+1,B
}