From aee46a25f5cf1c54b86f2b85f710ac9b344b9ce4 Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Thu, 12 Oct 2017 17:02:02 -0700 Subject: 4034 Start implementing core x86 addressing mode decoding. --- subx/000organization.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'subx/000organization.cc') diff --git a/subx/000organization.cc b/subx/000organization.cc index 320c0d4b..f729b17e 100644 --- a/subx/000organization.cc +++ b/subx/000organization.cc @@ -115,6 +115,7 @@ int main(int argc, char* argv[]) { // run on a 32-bit system assert(sizeof(int) == 4); assert(sizeof(float) == 4); + assert_little_endian(); // End One-time Setup @@ -138,3 +139,12 @@ int main(int argc, char* argv[]) { void reset() { // End Reset } + +void assert_little_endian() { + const int x = 1; + const char* y = reinterpret_cast(&x); + if (*y != 1) { + cerr << "the SubX VM only runs on little-endian processors. Do you have Intel (or AMD or Atom) inside?\n"; + exit(1); + } +} -- cgit 1.4.1-2-gfad0