source: branches/arm64/lisp-kernel/platform-linuxarm64.h @ 15550

Last change on this file since 15550 was 15550, checked in by gb, 8 years ago

Move along, nothing to see here. Honest.
Some the files (those that aren't missing ...) are empty; there's very
little in the way of actual ARMv8 code here, and there'll need to be
a lot more before this is even worth talking about.

File size: 1.3 KB
Line 
1/*
2   Copyright (C) 2012 Clozure Associates
3   This file is part of Clozure CL. 
4
5   Clozure CL is licensed under the terms of the Lisp Lesser GNU Public
6   License , known as the LLGPL and distributed with Clozure CL as the
7   file "LICENSE".  The LLGPL consists of a preamble and the LGPL,
8   which is distributed with Clozure CL as the file "LGPL".  Where these
9   conflict, the preamble takes precedence. 
10
11   Clozure CL is referenced in the preamble as the "LIBRARY."
12
13   The LLGPL is also available online at
14   http://opensource.franz.com/preamble.html
15*/
16
17#define WORD_SIZE 64
18#define PLATFORM_OS PLATFORM_OS_LINUX
19#define PLATFORM_CPU PLATFORM_CPU_ARM
20#define PLATFORM_WORD_SIZE PLATFORM_WORD_SIZE_64
21
22typedef struct ucontext ExceptionInformation;
23
24#include "standard-inttypes.h"
25
26#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
27#define IMAGE_BASE_ADDRESS 0x300000000000L
28
29#include "lisptypes.h"
30#include "arm64-constants.h"
31
32/* xp accessors */
33#define xpGPRvector(x) ((natural *)(&((x)->uc_mcontext.regs)))
34#define xpGPR(x,gprno) (xpGPRvector(x)[gprno])
35#define set_xpGPR(x,gpr,new) xpGPR((x),(gpr)) = (natural)(new)
36#define xpPC(x) (x->uc_mcontext.pc)
37#define eflags_register(xp) xpGPR(xp,Iflags)
38#define IS_PAGE_FAULT(info,xp) (xpGPR(xp,REG_TRAPNO)==0xe)
39#define SIGRETURN(context)
40
41#include "os-linux.h"
Note: See TracBrowser for help on using the repository browser.