backout RomConsts (added in xdc-B09)
diff --git a/ident.c b/ident.c
index 15fefab..f228280 100644
--- a/ident.c
+++ b/ident.c
@@ -2,7 +2,7 @@
  *  ======== ident.c ========
  */
 
-#define _VERS_ "@(#)*** xdc-B21"
+#define _VERS_ "@(#)*** xdc-B22"
 
 static char __NAME[] = _NAME_;
 static char __DATE[] = _DATE_;
diff --git a/src/packages/xdc/runtime/Assert.xdc b/src/packages/xdc/runtime/Assert.xdc
index 311bb08..649660e 100644
--- a/src/packages/xdc/runtime/Assert.xdc
+++ b/src/packages/xdc/runtime/Assert.xdc
@@ -153,7 +153,6 @@
  */
 @DirectCall
 @CustomHeader
-@RomConsts
 
 module Assert {
 
diff --git a/src/packages/xdc/runtime/Core.xdc b/src/packages/xdc/runtime/Core.xdc
index 73afdcc..44f4f3d 100644
--- a/src/packages/xdc/runtime/Core.xdc
+++ b/src/packages/xdc/runtime/Core.xdc
@@ -33,7 +33,6 @@
  *  @_nodoc
  */
 @DirectCall
-@RomConsts
 
 module Core {
 
diff --git a/src/packages/xdc/runtime/Defaults.xdc b/src/packages/xdc/runtime/Defaults.xdc
index 79a9329..3c27a9e 100644
--- a/src/packages/xdc/runtime/Defaults.xdc
+++ b/src/packages/xdc/runtime/Defaults.xdc
@@ -24,7 +24,6 @@
  *  modules do not set `common$` properties explicitly, these values will be
  *  used.
  */
-@RomConsts
 
 module Defaults {
 
diff --git a/src/packages/xdc/runtime/Diags.xdc b/src/packages/xdc/runtime/Diags.xdc
index 6b59173..3aaa5fe 100644
--- a/src/packages/xdc/runtime/Diags.xdc
+++ b/src/packages/xdc/runtime/Diags.xdc
@@ -198,7 +198,6 @@
 @CustomHeader
 @Template("./Diags.xdt")
 @DirectCall
-@RomConsts
 
 module Diags {
 
diff --git a/src/packages/xdc/runtime/Error.xdc b/src/packages/xdc/runtime/Error.xdc
index 593dda6..f3ab436 100644
--- a/src/packages/xdc/runtime/Error.xdc
+++ b/src/packages/xdc/runtime/Error.xdc
@@ -179,7 +179,6 @@
  *  @p
  */
 @DirectCall
-@RomConsts
 
 module Error {
 
diff --git a/src/packages/xdc/runtime/Gate.xdc b/src/packages/xdc/runtime/Gate.xdc
index caf910e..226be9c 100644
--- a/src/packages/xdc/runtime/Gate.xdc
+++ b/src/packages/xdc/runtime/Gate.xdc
@@ -60,7 +60,6 @@
  */
 @CustomHeader
 @DirectCall
-@RomConsts
 
 module Gate {
 
diff --git a/src/packages/xdc/runtime/GateNull.xdc b/src/packages/xdc/runtime/GateNull.xdc
index 2d4ff5b..81b54b9 100644
--- a/src/packages/xdc/runtime/GateNull.xdc
+++ b/src/packages/xdc/runtime/GateNull.xdc
@@ -22,7 +22,6 @@
  *  be used for modules in which the data structures protected by module-level
  *  gates are never accessed by concurrent threads.
  */
-@RomConsts
 
 module GateNull inherits IGateProvider {
 
diff --git a/src/packages/xdc/runtime/HeapMin.xdc b/src/packages/xdc/runtime/HeapMin.xdc
index 27338b5..527de25 100644
--- a/src/packages/xdc/runtime/HeapMin.xdc
+++ b/src/packages/xdc/runtime/HeapMin.xdc
@@ -33,7 +33,6 @@
  *  When calling `{@link #create()}` at runtime, the client 
  *  is responsible for aligning the buffer.
  */
-@RomConsts
 
 module HeapMin inherits xdc.runtime.IHeap {
 
diff --git a/src/packages/xdc/runtime/HeapStd.xdc b/src/packages/xdc/runtime/HeapStd.xdc
index 2d5d16b..61eee8d 100644
--- a/src/packages/xdc/runtime/HeapStd.xdc
+++ b/src/packages/xdc/runtime/HeapStd.xdc
@@ -37,7 +37,6 @@
  */
 
 @InstanceInitError  /* instance init can fail, call finalize if so */
-@RomConsts
 
 module HeapStd inherits xdc.runtime.IHeap {
 
diff --git a/src/packages/xdc/runtime/Log.xdc b/src/packages/xdc/runtime/Log.xdc
index e50a7f9..a2defee 100644
--- a/src/packages/xdc/runtime/Log.xdc
+++ b/src/packages/xdc/runtime/Log.xdc
@@ -200,7 +200,6 @@
 
 @CustomHeader
 @DirectCall
-@RomConsts
 
 module Log {
 
diff --git a/src/packages/xdc/runtime/LoggerBuf.xdc b/src/packages/xdc/runtime/LoggerBuf.xdc
index 94df5b9..435e085 100644
--- a/src/packages/xdc/runtime/LoggerBuf.xdc
+++ b/src/packages/xdc/runtime/LoggerBuf.xdc
@@ -84,7 +84,6 @@
 @InstanceFinalize   /* this mod has cleanup fxn when instances are deleted */
 @InstanceInitError  /* instance create can fail */
 @Gated
-@RomConsts
 
 module LoggerBuf inherits IFilterLogger {
 
diff --git a/src/packages/xdc/runtime/LoggerCallback.xdc b/src/packages/xdc/runtime/LoggerCallback.xdc
index acf5d6d..ca0a053 100644
--- a/src/packages/xdc/runtime/LoggerCallback.xdc
+++ b/src/packages/xdc/runtime/LoggerCallback.xdc
@@ -40,7 +40,6 @@
  *  @p
  */
 @ModuleStartup
-@RomConsts
 
 module LoggerCallback inherits ILogger {
 
diff --git a/src/packages/xdc/runtime/LoggerSys.xdc b/src/packages/xdc/runtime/LoggerSys.xdc
index 16c59a6..223adb2 100644
--- a/src/packages/xdc/runtime/LoggerSys.xdc
+++ b/src/packages/xdc/runtime/LoggerSys.xdc
@@ -47,7 +47,6 @@
  *  Diags.setMaskMeta("my.pkg.%", Diags.USER1, Diags.RUNTIME_ON);
  *  @p
  */
-@RomConsts
 
 module LoggerSys inherits ILogger {
 
diff --git a/src/packages/xdc/runtime/Main.xdc b/src/packages/xdc/runtime/Main.xdc
index 9244cfb..2cc6a39 100644
--- a/src/packages/xdc/runtime/Main.xdc
+++ b/src/packages/xdc/runtime/Main.xdc
@@ -49,7 +49,6 @@
  *  @p
  */
 @Gated
-@RomConsts
 
 module Main {
 };
diff --git a/src/packages/xdc/runtime/Memory.xdc b/src/packages/xdc/runtime/Memory.xdc
index 5311632..af73a88 100644
--- a/src/packages/xdc/runtime/Memory.xdc
+++ b/src/packages/xdc/runtime/Memory.xdc
@@ -35,7 +35,6 @@
  *  `{@link xdc.runtime.IHeap#Handle}` parameter.
  */
 @DirectCall
-@RomConsts
 
 module Memory {
 
diff --git a/src/packages/xdc/runtime/Registry.xdc b/src/packages/xdc/runtime/Registry.xdc
index e8a74ab..c40bb3f 100644
--- a/src/packages/xdc/runtime/Registry.xdc
+++ b/src/packages/xdc/runtime/Registry.xdc
@@ -102,7 +102,6 @@
  */
 @CustomHeader
 @DirectCall
-@RomConsts
 
 module Registry
 {
diff --git a/src/packages/xdc/runtime/Reset.xdc b/src/packages/xdc/runtime/Reset.xdc
index fffac03..7c984a1 100644
--- a/src/packages/xdc/runtime/Reset.xdc
+++ b/src/packages/xdc/runtime/Reset.xdc
@@ -43,7 +43,6 @@
  *  @see Startup
  */
 @Template("xdc/runtime/Reset.xdt")
-@RomConsts
 
 metaonly module Reset
 {
diff --git a/src/packages/xdc/runtime/Rta.xdc b/src/packages/xdc/runtime/Rta.xdc
index af518a9..dae5b96 100644
--- a/src/packages/xdc/runtime/Rta.xdc
+++ b/src/packages/xdc/runtime/Rta.xdc
@@ -34,7 +34,6 @@
  *  be called if not all of the defined commands are used.
  */
 @DirectCall
-@RomConsts
 
 module Rta {
 
diff --git a/src/packages/xdc/runtime/Startup.xdc b/src/packages/xdc/runtime/Startup.xdc
index 6622850..084c8ca 100644
--- a/src/packages/xdc/runtime/Startup.xdc
+++ b/src/packages/xdc/runtime/Startup.xdc
@@ -117,7 +117,6 @@
  */
 @Template("./Startup.xdt")
 @DirectCall
-@RomConsts
 
 module Startup {
 
diff --git a/src/packages/xdc/runtime/SysCallback.xdc b/src/packages/xdc/runtime/SysCallback.xdc
index e286f8b..050b32f 100644
--- a/src/packages/xdc/runtime/SysCallback.xdc
+++ b/src/packages/xdc/runtime/SysCallback.xdc
@@ -36,7 +36,6 @@
  *  @p
  *
  */
-@RomConsts
 
 module SysCallback inherits xdc.runtime.ISystemSupport
 {
diff --git a/src/packages/xdc/runtime/SysMin.xdc b/src/packages/xdc/runtime/SysMin.xdc
index 069a136..bfa309b 100644
--- a/src/packages/xdc/runtime/SysMin.xdc
+++ b/src/packages/xdc/runtime/SysMin.xdc
@@ -34,7 +34,6 @@
 
 @Template("./SysMin.xdt")
 @ModuleStartup
-@RomConsts
 
 module SysMin inherits xdc.runtime.ISystemSupport {
 
diff --git a/src/packages/xdc/runtime/SysStd.xdc b/src/packages/xdc/runtime/SysStd.xdc
index 70b8c2a..1e3e306 100644
--- a/src/packages/xdc/runtime/SysStd.xdc
+++ b/src/packages/xdc/runtime/SysStd.xdc
@@ -29,7 +29,6 @@
  *  (i.e. `fflush()` and `putchar()`). Therefore the  functions are re-entrant
  *  (thread-safe) if the underlying rts library is re-entrant.
  */
-@RomConsts
 
 module SysStd inherits xdc.runtime.ISystemSupport {
     /*!
diff --git a/src/packages/xdc/runtime/System.xdc b/src/packages/xdc/runtime/System.xdc
index b106079..40cdde5 100644
--- a/src/packages/xdc/runtime/System.xdc
+++ b/src/packages/xdc/runtime/System.xdc
@@ -37,7 +37,6 @@
 @Gated
 @ModuleStartup
 @DirectCall
-@RomConsts
 
 module System {
 
diff --git a/src/packages/xdc/runtime/Text.xdc b/src/packages/xdc/runtime/Text.xdc
index ceb83a1..c6ac41b 100644
--- a/src/packages/xdc/runtime/Text.xdc
+++ b/src/packages/xdc/runtime/Text.xdc
@@ -33,7 +33,6 @@
  */
 @Template("./Text.xdt")
 @DirectCall
-@RomConsts
 
 module Text {
 
diff --git a/src/packages/xdc/runtime/Timestamp.xdc b/src/packages/xdc/runtime/Timestamp.xdc
index 0be870c..cc876b2 100644
--- a/src/packages/xdc/runtime/Timestamp.xdc
+++ b/src/packages/xdc/runtime/Timestamp.xdc
@@ -48,7 +48,6 @@
  *  xdc.runtime.Timestamp.SupportProxy = xdc.useModule("xdc.runtime.TimestampStd");
  *  @p
  */
-@RomConsts
 
 module Timestamp inherits ITimestampClient {
 
diff --git a/src/packages/xdc/runtime/TimestampNull.xdc b/src/packages/xdc/runtime/TimestampNull.xdc
index 2904381..4e4ba97 100644
--- a/src/packages/xdc/runtime/TimestampNull.xdc
+++ b/src/packages/xdc/runtime/TimestampNull.xdc
@@ -16,6 +16,5 @@
  *  ======== TimestampNull ========
  *  Empty implementation of `{@link ITimestampProvider}`
  */
-@RomConsts
 
 module TimestampNull inherits ITimestampProvider {}
diff --git a/src/packages/xdc/runtime/TimestampStd.xdc b/src/packages/xdc/runtime/TimestampStd.xdc
index c3e6d9d..9f08c82 100644
--- a/src/packages/xdc/runtime/TimestampStd.xdc
+++ b/src/packages/xdc/runtime/TimestampStd.xdc
@@ -16,6 +16,5 @@
  *  ======== TimestampStd ========
  *  Implementation of `{@link ITimestampProvider}` using ANSI C `clock()`
  */
-@RomConsts
 
 module TimestampStd inherits ITimestampProvider {}
diff --git a/src/packages/xdc/runtime/Types.xdc b/src/packages/xdc/runtime/Types.xdc
index 48b91be..81938bf 100644
--- a/src/packages/xdc/runtime/Types.xdc
+++ b/src/packages/xdc/runtime/Types.xdc
@@ -57,8 +57,6 @@
  */
 
 @CustomHeader
-@RomConsts
-
 
 module Types {
 
diff --git a/src/packages/xdc/runtime/knl/Cache.xdc b/src/packages/xdc/runtime/knl/Cache.xdc
index 3d23742..95cf787 100644
--- a/src/packages/xdc/runtime/knl/Cache.xdc
+++ b/src/packages/xdc/runtime/knl/Cache.xdc
@@ -46,7 +46,6 @@
  *  @p
  */
 @DirectCall
-@RomConsts
 
 module Cache
 {
diff --git a/src/packages/xdc/runtime/knl/CacheSupportNull.xdc b/src/packages/xdc/runtime/knl/CacheSupportNull.xdc
index 182e4e0..6491890 100644
--- a/src/packages/xdc/runtime/knl/CacheSupportNull.xdc
+++ b/src/packages/xdc/runtime/knl/CacheSupportNull.xdc
@@ -2,7 +2,6 @@
  *  ======== CacheSupport.xdc ========
  *  Empty ICacheSupport implementation 
  */
-@RomConsts
 
 module CacheSupportNull inherits ICacheSupport
 {
diff --git a/src/packages/xdc/runtime/knl/GateH.xdc b/src/packages/xdc/runtime/knl/GateH.xdc
index 21f0443..ab7f90c 100644
--- a/src/packages/xdc/runtime/knl/GateH.xdc
+++ b/src/packages/xdc/runtime/knl/GateH.xdc
@@ -31,7 +31,6 @@
  *  the gate as many times as they entered it.
  */
 @DirectCall
-@RomConsts
 
 module GateH
 {
diff --git a/src/packages/xdc/runtime/knl/GateProcess.xdc b/src/packages/xdc/runtime/knl/GateProcess.xdc
index ce47d60..7311c1a 100644
--- a/src/packages/xdc/runtime/knl/GateProcess.xdc
+++ b/src/packages/xdc/runtime/knl/GateProcess.xdc
@@ -47,7 +47,6 @@
  */
 @InstanceInitError      /* because initialization can fail */
 @InstanceFinalize       /* have to GateProcess_Proxy_delete(gate) on delete */
-@RomConsts
 
 module GateProcess inherits IGateProvider
 {
diff --git a/src/packages/xdc/runtime/knl/GateProcessSupportNull.xdc b/src/packages/xdc/runtime/knl/GateProcessSupportNull.xdc
index 93b7e8a..c44fa61 100644
--- a/src/packages/xdc/runtime/knl/GateProcessSupportNull.xdc
+++ b/src/packages/xdc/runtime/knl/GateProcessSupportNull.xdc
@@ -2,7 +2,6 @@
  *  ======== GateProcessSupportNull.xdc ========
  *  Empty IGateProcessSupport implementation
  */
-@RomConsts
 
 module GateProcessSupportNull inherits IGateProcessSupport
 {
diff --git a/src/packages/xdc/runtime/knl/GateThread.xdc b/src/packages/xdc/runtime/knl/GateThread.xdc
index 375c286..0e2adbd 100644
--- a/src/packages/xdc/runtime/knl/GateThread.xdc
+++ b/src/packages/xdc/runtime/knl/GateThread.xdc
@@ -45,7 +45,6 @@
  */
 @InstanceInitError      /* because initialization can fail */
 @InstanceFinalize       /* have to Gate_Proxy_delete(sem) on delete */
-@RomConsts
 
 module GateThread inherits IGateProvider
 {
diff --git a/src/packages/xdc/runtime/knl/GateThreadSupportNull.xdc b/src/packages/xdc/runtime/knl/GateThreadSupportNull.xdc
index 4b84efa..d60c6fa 100644
--- a/src/packages/xdc/runtime/knl/GateThreadSupportNull.xdc
+++ b/src/packages/xdc/runtime/knl/GateThreadSupportNull.xdc
@@ -2,7 +2,6 @@
  *  ======== GateThreadSupportNull.xdc ========
  *  Empty IGateProcessSupport implementation
  */
-@RomConsts
 
 module GateThreadSupportNull inherits IGateThreadSupport
 {
diff --git a/src/packages/xdc/runtime/knl/SemProcess.xdc b/src/packages/xdc/runtime/knl/SemProcess.xdc
index a5c6ec7..2fa5f92 100644
--- a/src/packages/xdc/runtime/knl/SemProcess.xdc
+++ b/src/packages/xdc/runtime/knl/SemProcess.xdc
@@ -45,7 +45,6 @@
  */
 @InstanceInitError      /* because initialization can fail */
 @InstanceFinalize       /* have to Semaphore_Proxy_delete(sem) on delete */
-@RomConsts
 
 module SemProcess inherits ISemaphore
 {
diff --git a/src/packages/xdc/runtime/knl/SemThread.xdc b/src/packages/xdc/runtime/knl/SemThread.xdc
index 87b023e..4d126c2 100644
--- a/src/packages/xdc/runtime/knl/SemThread.xdc
+++ b/src/packages/xdc/runtime/knl/SemThread.xdc
@@ -45,7 +45,6 @@
  */
 @InstanceInitError      /* because initialization can fail */
 @InstanceFinalize       /* have to SemThread_Proxy_delete(sem) on delete */
-@RomConsts
 
 module SemThread inherits ISemaphore
 {
diff --git a/src/packages/xdc/runtime/knl/Semaphore.xdc b/src/packages/xdc/runtime/knl/Semaphore.xdc
index 91b2064..2959536 100644
--- a/src/packages/xdc/runtime/knl/Semaphore.xdc
+++ b/src/packages/xdc/runtime/knl/Semaphore.xdc
@@ -29,7 +29,6 @@
  *  APIs provided by this module.
  */
 @DirectCall
-@RomConsts
 
 module Semaphore
 {
diff --git a/src/packages/xdc/runtime/knl/Sync.xdc b/src/packages/xdc/runtime/knl/Sync.xdc
index 2f29497..fb4e3ff 100644
--- a/src/packages/xdc/runtime/knl/Sync.xdc
+++ b/src/packages/xdc/runtime/knl/Sync.xdc
@@ -27,7 +27,6 @@
  *  provided by this module.
  */
 @DirectCall
-@RomConsts
 
 module Sync
 {
diff --git a/src/packages/xdc/runtime/knl/SyncGeneric.xdc b/src/packages/xdc/runtime/knl/SyncGeneric.xdc
index 96b3fba..0284bf4 100644
--- a/src/packages/xdc/runtime/knl/SyncGeneric.xdc
+++ b/src/packages/xdc/runtime/knl/SyncGeneric.xdc
@@ -21,7 +21,6 @@
  *  This module allows users to plug in their own
  *  functions for signal, wait and query.
  */
-@RomConsts
 
 module SyncGeneric inherits xdc.runtime.knl.ISync
 {
diff --git a/src/packages/xdc/runtime/knl/SyncNull.xdc b/src/packages/xdc/runtime/knl/SyncNull.xdc
index d45a11c..ee2d32f 100644
--- a/src/packages/xdc/runtime/knl/SyncNull.xdc
+++ b/src/packages/xdc/runtime/knl/SyncNull.xdc
@@ -18,7 +18,6 @@
  *  ======== SyncNull ========
  *  Empty ISync implementation used mainly for testing
  */
-@RomConsts
 
 module SyncNull inherits xdc.runtime.knl.ISync
 {
diff --git a/src/packages/xdc/runtime/knl/SyncSemThread.xdc b/src/packages/xdc/runtime/knl/SyncSemThread.xdc
index 2230d28..89f1fef 100644
--- a/src/packages/xdc/runtime/knl/SyncSemThread.xdc
+++ b/src/packages/xdc/runtime/knl/SyncSemThread.xdc
@@ -25,7 +25,6 @@
  */
 @InstanceInitError      /* instance initialization can fail */
 @InstanceFinalize       /* instances require finalization */
-@RomConsts
 
 module SyncSemThread inherits xdc.runtime.knl.ISync
 {
diff --git a/src/packages/xdc/runtime/knl/Thread.xdc b/src/packages/xdc/runtime/knl/Thread.xdc
index bc05da9..af16fa1 100644
--- a/src/packages/xdc/runtime/knl/Thread.xdc
+++ b/src/packages/xdc/runtime/knl/Thread.xdc
@@ -46,7 +46,6 @@
 @InstanceInitError      /* because initialization can fail */
 @InstanceFinalize       /* have to Thread_Proxy_delete(sem) on delete */
 @DirectCall
-@RomConsts
 
 module Thread
 {
diff --git a/src/packages/xdc/services/intern/gen/Header.java b/src/packages/xdc/services/intern/gen/Header.java
index 82b1fdb..90405de 100644
--- a/src/packages/xdc/services/intern/gen/Header.java
+++ b/src/packages/xdc/services/intern/gen/Header.java
@@ -99,9 +99,6 @@
                 secL.add("C++ SUPPLIER WRAPPER [experimental]");
             }
         }
-        if (unit.attrBool(Attr.A_RomConsts)) {
-            secL.add("ROM SUPPORT");
-        }
 
         String[] secA = new String[]{};
         glob.genSections(secL.toArray(secA));
@@ -205,11 +202,6 @@
             }
             cppGen.genInternals(unit);
         }
-        if (unit.attrBool(Attr.A_RomConsts)) {
-            glob.genTitle("ROM SUPPORT");
-            genRom(unit);
-        }
-
     }
 
     // genAlias
@@ -1085,20 +1077,6 @@
         skip();
     }
 
-    // genRom
-    private void genRom(Unit unit)
-    {
-        glob.out.printf("#ifdef xdc_rom_build\n");
-        for (Decl.Config cfg : unit.getConfigs()) {
-            if (cfg.isInst() || cfg.isMeta()) {
-                continue;
-            }
-            glob.out.printf("#define %1%2__C (constPtr->%1%2__C)\n", glob.cname,
-                cfg.getName());
-        }
-        glob.out.printf("#endif\n");
-    }
-
     // genState
     private void genState( Unit unit )
     {
diff --git a/src/packages/xdc/services/spec/Attr.java b/src/packages/xdc/services/spec/Attr.java
index 49e46d2..5bc1588 100644
--- a/src/packages/xdc/services/spec/Attr.java
+++ b/src/packages/xdc/services/spec/Attr.java
@@ -39,7 +39,6 @@
     final public static String A_Opaque = "@Opaque";
     final public static String A_Prefix = "@Prefix";
     final public static String A_Proxy = "@Proxy";
-    final public static String A_RomConsts = "@RomConsts";
     final public static String A_System = "@System";
     final public static String A_TargetHeader = "@TargetHeader";
     final public static String A_Template = "@Template";
diff --git a/src/packages/xdc/services/spec/Unit.java b/src/packages/xdc/services/spec/Unit.java
index 95977d6..05ce065 100644
--- a/src/packages/xdc/services/spec/Unit.java
+++ b/src/packages/xdc/services/spec/Unit.java
@@ -59,7 +59,6 @@
             Attr.A_NoRuntime,
             Attr.A_Prefix,
             Attr.A_Proxy,
-            Attr.A_RomConsts,
             Attr.A_TargetHeader,
             Attr.A_Template,
         })