OSDN Git Service

(enum node_type): Add T_IMMEDIATE_PREFIX_TYPE.
authorraeburn <raeburn@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 May 1995 20:23:47 +0000 (20:23 +0000)
committerraeburn <raeburn@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 May 1995 20:23:47 +0000 (20:23 +0000)
(special_symbol): Handle it; emit value of IMMEDIATE_PREFIX.
(IMMEDIATE_PREFIX): Default to empty string.
(initialize_builtins): Install __IMMEDIATE_PREFIX__ builtin, parallel to
__REGISTER_PREFIX__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9661 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cccp.c

index 7f31e78..fa15572 100644 (file)
@@ -804,6 +804,7 @@ enum node_type {
  T_WCHAR_TYPE,   /* `__WCHAR_TYPE__' */
  T_USER_LABEL_PREFIX_TYPE, /* `__USER_LABEL_PREFIX__' */
  T_REGISTER_PREFIX_TYPE,   /* `__REGISTER_PREFIX__' */
+ T_IMMEDIATE_PREFIX_TYPE,  /* `__IMMEDIATE_PREFIX__' */
  T_TIME,       /* `__TIME__' */
  T_CONST,      /* Constant value, used by `__STDC__' */
  T_MACRO,      /* macro defined by `#define' */
@@ -884,6 +885,12 @@ char * wchar_type = WCHAR_TYPE;
 #ifndef REGISTER_PREFIX
 #define REGISTER_PREFIX ""
 #endif
+
+/* The string value for __IMMEDIATE_PREFIX__ */
+
+#ifndef IMMEDIATE_PREFIX
+#define IMMEDIATE_PREFIX ""
+#endif
 \f
 /* In the definition of a #assert name, this structure forms
    a list of the individual values asserted.
@@ -4162,6 +4169,10 @@ special_symbol (hp, op)
     buf = REGISTER_PREFIX;
     break;
 
+  case T_IMMEDIATE_PREFIX_TYPE:
+    buf = IMMEDIATE_PREFIX;
+    break;
+
   case T_CONST:
     buf = hp->value.cpval;
     if (pcp_inside_if && pcp_outfile)
@@ -9579,6 +9590,8 @@ initialize_builtins (inp, outp)
           NULL_PTR, -1);
   install ((U_CHAR *) "__REGISTER_PREFIX__", -1, T_REGISTER_PREFIX_TYPE,
           NULL_PTR, -1);
+  install ((U_CHAR *) "__IMMEDIATE_PREFIX__", -1, T_IMMEDIATE_PREFIX_TYPE,
+          NULL_PTR, -1);
   install ((U_CHAR *) "__TIME__", -1, T_TIME, NULL_PTR, -1);
   if (!traditional) {
     install ((U_CHAR *) "__STDC__", -1, T_CONST, "1", -1);