sim: cgen: require long long support
authorMike Frysinger <vapier@gentoo.org>
Mon, 28 Jun 2021 01:36:03 +0000 (21:36 -0400)
committerMike Frysinger <vapier@gentoo.org>
Tue, 29 Jun 2021 05:25:11 +0000 (01:25 -0400)
We require C11 now, so we can assume & require long long exists.
Drop this old code that hasn't been used for a long long time.

sim/common/ChangeLog
sim/common/cgen-types.h
sim/common/cgen-utils.c

index 56c7dc666dc20d9d32d63b51475069867d1adbf2..2faba1fc8fb1e73601b879f8a996f49877a13d64 100644 (file)
@@ -1,3 +1,9 @@
+2021-06-29  Mike Frysinger  <vapier@gentoo.org>
+
+       * cgen-types.h (HAVE_LONGLONG): Delete define.
+       [!HAVE_LONGLONG]: Delete all protected code.
+       * cgen-utils.c (make_struct_di): Delete.
+
 2021-06-27  Mike Frysinger  <vapier@gentoo.org>
 
        * cgen-trace.c: Include diagnostics.h.
index c002876803c72eec2afd10d1b3a2e8556eea3fb1..cb71b6bdda1297195161c481673e5ef44fb22fc6 100644 (file)
@@ -31,10 +31,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 #define SIM_HAVE_ADDR_RANGE
 
 #ifdef __GNUC__
-#define HAVE_LONGLONG
 #undef DI_FN_SUPPORT
 #else
-#undef HAVE_LONGLONG
 #define DI_FN_SUPPORT
 #endif
 \f
@@ -68,7 +66,6 @@ typedef unsigned8 UQI;
 typedef unsigned16 UHI;
 typedef unsigned32 USI;
 
-#ifdef HAVE_LONGLONG
 typedef signed64 DI;
 typedef unsigned64 UDI;
 #define GETLODI(di) ((SI) (di))
@@ -76,21 +73,6 @@ typedef unsigned64 UDI;
 #define SETLODI(di, val) ((di) = (((di) & 0xffffffff00000000LL) | (val)))
 #define SETHIDI(di, val) ((di) = (((di) & 0xffffffffLL) | (((DI) (val)) << 32)))
 #define MAKEDI(hi, lo) ((((DI) (SI) (hi)) << 32) | ((UDI) (USI) (lo)))
-#else
-/* DI mode support if "long long" doesn't exist.
-   At one point CGEN supported K&R C compilers, and ANSI C compilers without
-   "long long".  One can argue the various merits of keeping this in or
-   throwing it out.  I went to the trouble of adding it so for the time being
-   I'm leaving it in.  */
-typedef struct { SI hi,lo; } DI;
-typedef DI UDI;
-#define GETLODI(di) ((di).lo)
-#define GETHIDI(di) ((di).hi)
-#define SETLODI(di, val) ((di).lo = (val))
-#define SETHIDI(di, val) ((di).hi = (val))
-extern DI make_struct_di (SI, SI);
-#define MAKEDI(hi, lo) (make_struct_di ((hi), (lo)))
-#endif
 
 /* These are used to record extracted raw data from an instruction, among other
    things.  It must be a host data type, and not a target one.  */
index 529d80dfb15c2001690b1d0323d108e672beab7d..8c0856c795b83fbf0c126a0693be7f0bf66f818a 100644 (file)
@@ -117,17 +117,6 @@ cgen_cpu_max_extra_bytes (void)
 \f
 #ifdef DI_FN_SUPPORT
 
-DI
-make_struct_di (hi, lo)
-     SI hi, lo;
-{
-  DI result;
-
-  result.hi = hi;
-  result.lo = lo;
-  return result;
-}
-
 DI
 ANDDI (a, b)
      DI a, b;