Make RL78 disassembler and simulator respect ISA for mul/div
[deliverable/binutils-gdb.git] / sim / rl78 / load.c
index 66d00d3a6caa5a24aeaf9682c92a99ca709aac8a..ef559a518f46a02e2314a14060bd4a3889aa5185 100644 (file)
@@ -92,13 +92,26 @@ rl78_load (bfd *prog, host_callback *callbacks, const char * const simname)
       return;
     }
 
-  rl78_g10_mode = 0;
   switch (elf_elfheader (prog)->e_flags & E_FLAG_RL78_CPU_MASK)
     {
-    case E_FLAG_RL78_G10: rl78_g10_mode = 1; break;
-    case E_FLAG_RL78_G13: g13_multiply = 1; break;
+    case E_FLAG_RL78_G10:
+      rl78_g10_mode = 1;
+      g13_multiply = 0;
+      g14_multiply = 0;
+      mem_set_mirror (0, 0xf8000, 4096);
+      break;
+    case E_FLAG_RL78_G13:
+      rl78_g10_mode = 0;
+      g13_multiply = 1;
+      g14_multiply = 0;
+      break;
     case E_FLAG_RL78_G14:
+      rl78_g10_mode = 0;
+      g13_multiply = 0;
+      g14_multiply = 1;
+      break;
     default:
+      /* Keep whatever was manually specified.  */
       break;
     }
 
This page took 0.034454 seconds and 4 git commands to generate.