]> git.sur5r.net Git - cc65/blobdiff - src/cc65/codegen.h
Allow type qualifiers before a storage class spec.
[cc65] / src / cc65 / codegen.h
index 68e15b1897c0baebe83650c31affa0f901b56cb2..815482fe48cf7ee9a50032bac8eb137fa083f71b 100644 (file)
@@ -6,9 +6,9 @@
 /*                                                                           */
 /*                                                                           */
 /*                                                                           */
-/* (C) 1998-2002 Ullrich von Bassewitz                                       */
-/*               Wacholderweg 14                                             */
-/*               D-70597 Stuttgart                                           */
+/* (C) 1998-2004 Ullrich von Bassewitz                                       */
+/*               Römerstrasse 52                                             */
+/*               D-70794 Filderstadt                                         */
 /* EMail:        uz@cc65.org                                                 */
 /*                                                                           */
 /*                                                                           */
@@ -63,6 +63,7 @@
 #define CF_INT         0x0001  /* Operation on ints */
 #define CF_PTR         CF_INT  /* Alias for readability */
 #define CF_LONG                0x0000  /* Operation on longs */
+#define CF_FLOAT        0x0004  /* Operation on a float */
 
 #define CF_NOKEEP      0x0008  /* Value may get destroyed when storing */
 
@@ -84,9 +85,6 @@
 
 
 
-/* Compiler relative stackpointer */
-extern int oursp;
-
 /* Forward */
 struct StrBuf;
 
@@ -121,8 +119,8 @@ void g_usedata (void);
 void g_usebss (void);
 /* Switch to the bss segment */
 
-void g_segname (segment_t Seg, const char* Name);
-/* Set the name of a segment */
+void g_segname (segment_t Seg);
+/* Emit the name of a segment if necessary */
 
 
 
@@ -155,6 +153,9 @@ void g_defexport (const char* Name, int ZP);
 void g_defimport (const char* Name, int ZP);
 /* Import the given label */
 
+void g_importmainargs (void);
+/* Forced import of a special symbol that handles arguments to main */
+
 
 
 /*****************************************************************************/
@@ -232,6 +233,9 @@ void g_leave (void);
 
 
 
+void g_swap_regvars (int StackOffs, int RegOffs, unsigned Bytes);
+/* Swap a register variable with a location on the stack */
+
 void g_save_regvars (int RegOffs, unsigned Bytes);
 /* Save register variables */
 
@@ -429,8 +433,11 @@ void g_defdata (unsigned flags, unsigned long val, long offs);
 void g_defbytes (const void* bytes, unsigned count);
 /* Output a row of bytes as a constant */
 
-void g_zerobytes (unsigned n);
-/* Output n bytes of data initialized with zero */
+void g_zerobytes (unsigned Count);
+/* Output Count bytes of data initialized with zero */
+
+void g_initregister (unsigned Label, unsigned Reg, unsigned Size);
+/* Initialize a register variable from static initialization data */
 
 void g_initauto (unsigned Label, unsigned Size);
 /* Initialize a local variable at stack offset zero from static data */
@@ -462,17 +469,6 @@ void g_asmcode (struct StrBuf* B);
 
 
 
-/*****************************************************************************/
-/*                         Inlined known functions                          */
-/*****************************************************************************/
-
-
-
-void g_strlen (unsigned flags, unsigned long val, long offs);
-/* Inline the strlen() function */
-
-
-
 /* End of codegen.h */
 #endif