Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1cd3bc1c authored by Al Viro's avatar Al Viro Committed by Linus Torvalds
Browse files

[PATCH] uml: cross-build support : mk_ptregs



mk_ptregs converted.  Nothing new here, it's the same situation as with
mk_user_constants.

Signed-off-by: default avatarAl Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: default avatarJeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 8d0b9dc9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -196,7 +196,7 @@ $(ARCH_DIR)/kernel/skas/util/mk_ptregs: $(ARCH_DIR)/kernel/skas/util FORCE ;
$(ARCH_DIR)/util: scripts_basic $(SYS_DIR)/sc.h FORCE
	$(Q)$(MAKE) $(build)=$@

$(ARCH_DIR)/kernel/skas/util: scripts_basic FORCE
$(ARCH_DIR)/kernel/skas/util: scripts_basic $(ARCH_DIR)/user-offsets.h FORCE
	$(Q)$(MAKE) $(build)=$@

$(ARCH_DIR)/os-$(OS)/util: scripts_basic FORCE
+1 −0
Original line number Diff line number Diff line
@@ -2,3 +2,4 @@ hostprogs-y := mk_ptregs
always			:= $(hostprogs-y)

mk_ptregs-objs := mk_ptregs-$(SUBARCH).o
HOSTCFLAGS_mk_ptregs-$(SUBARCH).o := -I$(objtree)/arch/um
+22 −24
Original line number Diff line number Diff line
#include <stdio.h>
#include <asm/ptrace.h>
#include <asm/user.h>
#include <user-offsets.h>

#define PRINT_REG(name, val) printf("#define HOST_%s %d\n", (name), (val))
#define SHOW(name) printf("#define %s %d\n", #name, name)

int main(int argc, char **argv)
{
@@ -12,28 +11,27 @@ int main(int argc, char **argv)
	printf("#ifndef __SKAS_PT_REGS_\n");
	printf("#define __SKAS_PT_REGS_\n");
	printf("\n");
	printf("#define HOST_FRAME_SIZE %d\n", FRAME_SIZE);
	printf("#define HOST_FP_SIZE %d\n",
	       sizeof(struct user_i387_struct) / sizeof(unsigned long));
	printf("#define HOST_XFP_SIZE %d\n",
	       sizeof(struct user_fxsr_struct) / sizeof(unsigned long));
	SHOW(HOST_FRAME_SIZE);
	SHOW(HOST_FP_SIZE);
	SHOW(HOST_XFP_SIZE);

	SHOW(HOST_IP);
	SHOW(HOST_SP);
	SHOW(HOST_EFLAGS);
	SHOW(HOST_EAX);
	SHOW(HOST_EBX);
	SHOW(HOST_ECX);
	SHOW(HOST_EDX);
	SHOW(HOST_ESI);
	SHOW(HOST_EDI);
	SHOW(HOST_EBP);
	SHOW(HOST_CS);
	SHOW(HOST_SS);
	SHOW(HOST_DS);
	SHOW(HOST_FS);
	SHOW(HOST_ES);
	SHOW(HOST_GS);

	PRINT_REG("IP", EIP);
	PRINT_REG("SP", UESP);
	PRINT_REG("EFLAGS", EFL);
	PRINT_REG("EAX", EAX);
	PRINT_REG("EBX", EBX);
	PRINT_REG("ECX", ECX);
	PRINT_REG("EDX", EDX);
	PRINT_REG("ESI", ESI);
	PRINT_REG("EDI", EDI);
	PRINT_REG("EBP", EBP);
	PRINT_REG("CS", CS);
	PRINT_REG("SS", SS);
	PRINT_REG("DS", DS);
	PRINT_REG("FS", FS);
	PRINT_REG("ES", ES);
	PRINT_REG("GS", GS);
	printf("\n");
	printf("#endif\n");
	return(0);
+29 −31
Original line number Diff line number Diff line
@@ -5,11 +5,10 @@
 */

#include <stdio.h>
#define __FRAME_OFFSETS
#include <asm/ptrace.h>
#include <user-offsets.h>

#define PRINT_REG(name, val) \
	printf("#define HOST_%s (%d / sizeof(unsigned long))\n", (name), (val))
#define SHOW(name) \
	printf("#define %s (%d / sizeof(unsigned long))\n", #name, name)

int main(int argc, char **argv)
{
@@ -18,36 +17,35 @@ int main(int argc, char **argv)
	printf("\n");
	printf("#ifndef __SKAS_PT_REGS_\n");
	printf("#define __SKAS_PT_REGS_\n");
	printf("#define HOST_FRAME_SIZE (%d / sizeof(unsigned long))\n",
	       FRAME_SIZE);
	PRINT_REG("RBX", RBX);
	PRINT_REG("RCX", RCX);
	PRINT_REG("RDI", RDI);
	PRINT_REG("RSI", RSI);
	PRINT_REG("RDX", RDX);
	PRINT_REG("RBP", RBP);
	PRINT_REG("RAX", RAX);
	PRINT_REG("R8", R8);
	PRINT_REG("R9", R9);
	PRINT_REG("R10", R10);
	PRINT_REG("R11", R11);
	PRINT_REG("R12", R12);
	PRINT_REG("R13", R13);
	PRINT_REG("R14", R14);
	PRINT_REG("R15", R15);
	PRINT_REG("ORIG_RAX", ORIG_RAX);
	PRINT_REG("CS", CS);
	PRINT_REG("SS", SS);
	PRINT_REG("EFLAGS", EFLAGS);
	SHOW(HOST_FRAME_SIZE);
	SHOW(HOST_RBX);
	SHOW(HOST_RCX);
	SHOW(HOST_RDI);
	SHOW(HOST_RSI);
	SHOW(HOST_RDX);
	SHOW(HOST_RBP);
	SHOW(HOST_RAX);
	SHOW(HOST_R8);
	SHOW(HOST_R9);
	SHOW(HOST_R10);
	SHOW(HOST_R11);
	SHOW(HOST_R12);
	SHOW(HOST_R13);
	SHOW(HOST_R14);
	SHOW(HOST_R15);
	SHOW(HOST_ORIG_RAX);
	SHOW(HOST_CS);
	SHOW(HOST_SS);
	SHOW(HOST_EFLAGS);
#if 0
	PRINT_REG("FS", FS);
	PRINT_REG("GS", GS);
	PRINT_REG("DS", DS);
	PRINT_REG("ES", ES);
	SHOW(HOST_FS);
	SHOW(HOST_GS);
	SHOW(HOST_DS);
	SHOW(HOST_ES);
#endif

	PRINT_REG("IP", RIP);
	PRINT_REG("SP", RSP);
	SHOW(HOST_IP);
	SHOW(HOST_SP);
	printf("#define HOST_FP_SIZE 0\n");
	printf("#define HOST_XFP_SIZE 0\n");
	printf("\n");