-
Notifications
You must be signed in to change notification settings - Fork 279
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Introduction of support for the 64-bit SPARC V9 architecture. This
version supports running against a live kernel. Compressed kdump support is also here, but the crash dump support for the kernel, kexec-tools, and makedumpfile is still pending. Initial work was done by Karl Volz with help from Bob Picco. ([email protected])
- Loading branch information
Dave Anderson
committed
Apr 26, 2016
1 parent
5690022
commit fd2f8ef
Showing
8 changed files
with
1,516 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -104,6 +104,7 @@ void add_extra_lib(char *); | |
#undef X86_64 | ||
#undef ARM | ||
#undef ARM64 | ||
#undef SPARC64 | ||
|
||
#define UNKNOWN 0 | ||
#define X86 1 | ||
|
@@ -117,6 +118,7 @@ void add_extra_lib(char *); | |
#define ARM 9 | ||
#define ARM64 10 | ||
#define MIPS 11 | ||
#define SPARC64 12 | ||
|
||
#define TARGET_X86 "TARGET=X86" | ||
#define TARGET_ALPHA "TARGET=ALPHA" | ||
|
@@ -129,6 +131,7 @@ void add_extra_lib(char *); | |
#define TARGET_ARM "TARGET=ARM" | ||
#define TARGET_ARM64 "TARGET=ARM64" | ||
#define TARGET_MIPS "TARGET=MIPS" | ||
#define TARGET_SPARC64 "TARGET=SPARC64" | ||
|
||
#define TARGET_CFLAGS_X86 "TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64" | ||
#define TARGET_CFLAGS_ALPHA "TARGET_CFLAGS=" | ||
|
@@ -149,6 +152,7 @@ void add_extra_lib(char *); | |
#define TARGET_CFLAGS_MIPS "TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64" | ||
#define TARGET_CFLAGS_MIPS_ON_X86 "TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64" | ||
#define TARGET_CFLAGS_MIPS_ON_X86_64 "TARGET_CFLAGS=-m32 -D_FILE_OFFSET_BITS=64" | ||
#define TARGET_CFLAGS_SPARC64 "TARGET_CFLAGS=" | ||
|
||
#define GDB_TARGET_DEFAULT "GDB_CONF_FLAGS=" | ||
#define GDB_TARGET_ARM_ON_X86 "GDB_CONF_FLAGS=--target=arm-elf-linux" | ||
|
@@ -378,6 +382,9 @@ get_current_configuration(struct supported_gdb_version *sp) | |
#ifdef __mips__ | ||
target_data.target = MIPS; | ||
#endif | ||
#ifdef __sparc_v9__ | ||
target_data.target = SPARC64; | ||
#endif | ||
|
||
set_initial_target(sp); | ||
|
||
|
@@ -510,6 +517,10 @@ get_current_configuration(struct supported_gdb_version *sp) | |
if ((target_data.target == PPC) && | ||
(target_data.initial_gdb_target != PPC)) | ||
arch_mismatch(sp); | ||
|
||
if ((target_data.target == SPARC64) && | ||
(target_data.initial_gdb_target != SPARC64)) | ||
arch_mismatch(sp); | ||
} | ||
|
||
if ((fp = fopen("Makefile", "r")) == NULL) { | ||
|
@@ -620,6 +631,9 @@ show_configuration(void) | |
case MIPS: | ||
printf("TARGET: MIPS\n"); | ||
break; | ||
case SPARC64: | ||
printf("TARGET: SPARC64\n"); | ||
break; | ||
} | ||
|
||
if (strlen(target_data.program)) { | ||
|
@@ -729,6 +743,10 @@ build_configure(struct supported_gdb_version *sp) | |
} else | ||
target_CFLAGS = TARGET_CFLAGS_MIPS; | ||
break; | ||
case SPARC64: | ||
target = TARGET_SPARC64; | ||
target_CFLAGS = TARGET_CFLAGS_SPARC64; | ||
break; | ||
} | ||
|
||
ldflags = get_extra_flags("LDFLAGS.extra", NULL); | ||
|
@@ -1325,7 +1343,7 @@ make_spec_file(struct supported_gdb_version *sp) | |
printf("Vendor: Red Hat, Inc.\n"); | ||
printf("Packager: Dave Anderson <[email protected]>\n"); | ||
printf("ExclusiveOS: Linux\n"); | ||
printf("ExclusiveArch: %%{ix86} alpha ia64 ppc ppc64 ppc64pseries ppc64iseries x86_64 s390 s390x arm aarch64 ppc64le mips mipsel\n"); | ||
printf("ExclusiveArch: %%{ix86} alpha ia64 ppc ppc64 ppc64pseries ppc64iseries x86_64 s390 s390x arm aarch64 ppc64le mips mipsel sparc64\n"); | ||
printf("Buildroot: %%{_tmppath}/%%{name}-root\n"); | ||
printf("BuildRequires: ncurses-devel zlib-devel bison\n"); | ||
printf("Requires: binutils\n"); | ||
|
@@ -1554,6 +1572,8 @@ set_initial_target(struct supported_gdb_version *sp) | |
target_data.initial_gdb_target = ARM; | ||
else if (strncmp(buf, "MIPS", strlen("MIPS")) == 0) | ||
target_data.initial_gdb_target = MIPS; | ||
else if (strncmp(buf, "SPARC64", strlen("SPARC64")) == 0) | ||
target_data.initial_gdb_target = SPARC64; | ||
} | ||
|
||
char * | ||
|
@@ -1572,6 +1592,7 @@ target_to_name(int target) | |
case ARM: return("ARM"); | ||
case ARM64: return("ARM64"); | ||
case MIPS: return("MIPS"); | ||
case SPARC64: return("SPARC64"); | ||
} | ||
|
||
return "UNKNOWN"; | ||
|
@@ -1630,6 +1651,8 @@ name_to_target(char *name) | |
return MIPS; | ||
else if (strncmp(name, "MIPS", strlen("MIPS")) == 0) | ||
return MIPS; | ||
else if (strncmp(name, "sparc64", strlen("sparc64")) == 0) | ||
return SPARC64; | ||
|
||
return UNKNOWN; | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.