xqemu/target/i386
Kirill A. Shutemov 6c7c3c21f9 x86: implement la57 paging mode
The new paging more is extension of IA32e mode with more additional page
table level.

It brings support of 57-bit vitrual address space (128PB) and 52-bit
physical address space (4PB).

The structure of new page table level is identical to pml4.

The feature is enumerated with CPUID.(EAX=07H, ECX=0):ECX[bit 16].

CR4.LA57[bit 12] need to be set when pageing enables to activate 5-level
paging mode.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Message-Id: <20161215001305.146807-1-kirill.shutemov@linux.intel.com>
[Drop changes to target-i386/translate.c. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2016-12-22 16:01:04 +01:00
..
Makefile.objs Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
TODO Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
arch_dump.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
arch_memory_mapping.c x86: implement la57 paging mode 2016-12-22 16:01:04 +01:00
bpt_helper.c target-i386: Fix eflags.TF/#DB handling of syscall/sysret insns 2016-12-22 16:01:04 +01:00
cc_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
cc_helper_template.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
cpu-qom.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
cpu.c x86: implement la57 paging mode 2016-12-22 16:01:04 +01:00
cpu.h x86: implement la57 paging mode 2016-12-22 16:01:04 +01:00
excp_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
fpu_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
gdbstub.c x86: Fix x86_64 'g' packet response to gdb from 32-bit mode. 2016-12-22 16:00:25 +01:00
helper.c x86: implement la57 paging mode 2016-12-22 16:01:04 +01:00
helper.h target-i386: Fix eflags.TF/#DB handling of syscall/sysret insns 2016-12-22 16:01:04 +01:00
hyperv.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
hyperv.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
int_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
kvm-stub.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
kvm.c kvmclock: reduce kvmclock difference on migration 2016-12-22 16:00:56 +01:00
kvm_i386.h kvmclock: reduce kvmclock difference on migration 2016-12-22 16:00:56 +01:00
machine.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
mem_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
misc_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
monitor.c x86: implement la57 paging mode 2016-12-22 16:01:04 +01:00
mpx_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
ops_sse.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
ops_sse_header.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
seg_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
shift_helper_template.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
smm_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
svm.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
svm_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
trace-events Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
translate.c target-i386: Fix eflags.TF/#DB handling of syscall/sysret insns 2016-12-22 16:01:04 +01:00