Enable sljit in amd64 kernel and modules.

This commit is contained in:
alnsn 2012-10-13 19:42:02 +00:00
parent 396c97ad03
commit c0135b01f2
6 changed files with 112 additions and 3 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: md.amd64,v 1.34 2012/08/06 10:44:08 martin Exp $
# $NetBSD: md.amd64,v 1.35 2012/10/13 19:42:02 alnsn Exp $
./@MODULEDIR@/acpiacad base-kernel-modules kmod
./@MODULEDIR@/acpiacad/acpiacad.kmod base-kernel-modules kmod
./@MODULEDIR@/acpibat base-kernel-modules kmod
@ -105,6 +105,8 @@
./@MODULEDIR@/powernow/powernow.kmod base-kernel-modules kmod
./@MODULEDIR@/pwdog base-kernel-modules kmod
./@MODULEDIR@/pwdog/pwdog.kmod base-kernel-modules kmod
./@MODULEDIR@/sljit base-kernel-modules kmod
./@MODULEDIR@/sljit/sljit.kmod base-kernel-modules kmod
./@MODULEDIR@/syscallemu base-kernel-modules kmod
./@MODULEDIR@/syscallemu/syscallemu.kmod base-kernel-modules kmod
./@MODULEDIR@/thinkpad base-kernel-modules kmod

View File

@ -1,4 +1,4 @@
# $NetBSD: files.amd64,v 1.78 2012/10/04 21:23:45 dsl Exp $
# $NetBSD: files.amd64,v 1.79 2012/10/13 19:42:02 alnsn Exp $
#
# new style config file for amd64 architecture
#
@ -48,6 +48,12 @@ file dev/cons.c
file arch/amd64/amd64/mptramp.S multiprocessor
#
# Stack-less Just-In-Time compiler
#
include "external/bsd/sljit/conf/files.sljit"
#
# Machine-independent SCSI drivers
#

View File

@ -0,0 +1,34 @@
/* $NetBSD: sljitarch.h,v 1.1 2012/10/13 19:42:03 alnsn Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef AMD64_SLJITARCH_H
#define AMD64_SLJITARCH_H
#define SLJIT_CONFIG_X86_64 1
#endif

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.111 2012/09/16 13:47:41 rmind Exp $
# $NetBSD: Makefile,v 1.112 2012/10/13 19:42:03 alnsn Exp $
.include <bsd.own.mk>
@ -121,6 +121,10 @@ SUBDIR+= tprof_amdpmi
SUBDIR+= vmt
.endif
.if ${MACHINE_ARCH} == "x86_64"
SUBDIR+= sljit
.endif
#
# ACPI modules
#

View File

@ -0,0 +1,10 @@
# $NetBSD: Makefile,v 1.1 2012/10/13 19:42:03 alnsn Exp $
.include "../Makefile.inc"
.PATH: ${S}/external/bsd/sljit/dist/sljit_src
KMOD= sljit
SRCS= sljitLir.c sljit_mod.c
.include <bsd.kmodule.mk>

View File

@ -0,0 +1,53 @@
/* $NetBSD: sljit_mod.c,v 1.1 2012/10/13 19:42:03 alnsn Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: sljit_mod.c,v 1.1 2012/10/13 19:42:03 alnsn Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/module.h>
MODULE(MODULE_CLASS_MISC, sljit, NULL)
static int
sljit_modcmd(modcmd_t cmd, void *arg)
{
switch (cmd) {
case MODULE_CMD_INIT:
return 0;
case MODULE_CMD_FINI:
return EOPNOTSUPP;
default:
return ENOTTY;
}
}