+2021-04-18 Mike Frysinger <vapier@gentoo.org>
+
+ * gennltvals.py (TARGETS): Add moxie.
+ * nltvals.def: Regenerate.
+
2021-04-18 Mike Frysinger <vapier@gentoo.org>
* gennltvals.py (TARGET_DIRS, TARGETS): Add sh.
'mcore',
'mn10200',
'mn10300',
+ 'moxie',
'msp430',
'pru',
'riscv',
/* end mn10300 sys target macros */
#endif
#endif
+#ifdef NL_TARGET_moxie
+#ifdef sys_defs
+/* from syscall.h */
+/* begin moxie sys target macros */
+ { "SYS_argc", 22 },
+ { "SYS_argn", 24 },
+ { "SYS_argnlen", 23 },
+ { "SYS_argv", 13 },
+ { "SYS_argvlen", 12 },
+ { "SYS_chdir", 14 },
+ { "SYS_chmod", 16 },
+ { "SYS_close", 3 },
+ { "SYS_exit", 1 },
+ { "SYS_fstat", 10 },
+ { "SYS_getpid", 8 },
+ { "SYS_gettimeofday", 19 },
+ { "SYS_kill", 9 },
+ { "SYS_link", 21 },
+ { "SYS_lseek", 6 },
+ { "SYS_open", 2 },
+ { "SYS_read", 4 },
+ { "SYS_reconfig", 25 },
+ { "SYS_stat", 15 },
+ { "SYS_time", 18 },
+ { "SYS_times", 20 },
+ { "SYS_unlink", 7 },
+ { "SYS_utime", 17 },
+ { "SYS_write", 5 },
+/* end moxie sys target macros */
+#endif
+#endif
#ifdef NL_TARGET_msp430
#ifdef sys_defs
/* from syscall.h */
+2021-04-18 Mike Frysinger <vapier@gentoo.org>
+
+ * Makefile.in (NL_TARGET): Define.
+ * interp.c: Include targ-vals.h.
+ (sim_engine_run): Change numeric literals to SYS_ constants.
+
2021-04-18 Mike Frysinger <vapier@gentoo.org>
* configure: Regenerate.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# This selects the newlib/libgloss syscall definitions.
+NL_TARGET = -DNL_TARGET_moxie
+
## COMMON_PRE_CONFIG_FRAG
DTC = @DTC@
#include "sim-base.h"
#include "sim-options.h"
#include "sim-io.h"
+#include "targ-vals.h"
typedef int word;
typedef unsigned int uword;
cpu.asregs.sregs[3] = inum;
switch (inum)
{
- case 0x1: /* SYS_exit */
+ case TARGET_SYS_exit:
{
sim_engine_halt (sd, scpu, NULL, pc, sim_exited,
cpu.asregs.regs[2]);
break;
}
- case 0x2: /* SYS_open */
+ case TARGET_SYS_open:
{
char fname[1024];
int mode = (int) convert_target_flags ((unsigned) cpu.asregs.regs[3]);
cpu.asregs.regs[2] = fd;
break;
}
- case 0x4: /* SYS_read */
+ case TARGET_SYS_read:
{
int fd = cpu.asregs.regs[2];
unsigned len = (unsigned) cpu.asregs.regs[4];
free (buf);
break;
}
- case 0x5: /* SYS_write */
+ case TARGET_SYS_write:
{
char *str;
/* String length is at 0x12($fp) */
cpu.asregs.regs[2] = count;
break;
}
- case 0x7: /* SYS_unlink */
+ case TARGET_SYS_unlink:
{
char fname[1024];
int fd;