diff options
author | Scott Bambrough <scottb@netwinder.org> | 2000-04-07 22:26:11 +0000 |
---|---|---|
committer | Scott Bambrough <scottb@netwinder.org> | 2000-04-07 22:26:11 +0000 |
commit | 134e61c4a77c65329c049cb790166a400f7b9fda (patch) | |
tree | 40a8f0c59e7aad961d9b968dbc72af838cdc95ca /gdb/config/arm | |
parent | 03e0fb3a47c004dbe49bfc48cbd458c284c83292 (diff) | |
download | gdb-134e61c4a77c65329c049cb790166a400f7b9fda.zip gdb-134e61c4a77c65329c049cb790166a400f7b9fda.tar.gz gdb-134e61c4a77c65329c049cb790166a400f7b9fda.tar.bz2 |
2000-04-07 Scott Bambrough <scottb@netwinder.org>
* ChangeLog: Correct date on last entry.
* arm-linux-tdep.c (arm_linux_push_arguments): New function.
* config/arm/tm-linux: Redefined PUSH_ARGUMENTS for Linux.
* config/arm/tm-embed: Fix build warning from redefinition of
LOWEST_PC.
* config/arm/tm-arm.h: Remove TARGET_BYTE_ORDER_SELECTABLE.
* config/arm/tm-wince.h: Remove TARGET_BYTE_ORDER_SELECTABLE and
TARGET_BYTE_ORDER. Add TARGET_BYTE_ORDER_SELECTABLE_P to
override default in tm-arm.h. Use default target byte order
from tm-arm.h.
Diffstat (limited to 'gdb/config/arm')
-rw-r--r-- | gdb/config/arm/tm-arm.h | 4 | ||||
-rw-r--r-- | gdb/config/arm/tm-embed.h | 1 | ||||
-rw-r--r-- | gdb/config/arm/tm-linux.h | 19 | ||||
-rw-r--r-- | gdb/config/arm/tm-wince.h | 5 |
4 files changed, 22 insertions, 7 deletions
diff --git a/gdb/config/arm/tm-arm.h b/gdb/config/arm/tm-arm.h index 5ff75aa..e64b776 100644 --- a/gdb/config/arm/tm-arm.h +++ b/gdb/config/arm/tm-arm.h @@ -25,11 +25,9 @@ struct type; struct value; -#define TARGET_BYTE_ORDER_SELECTABLE - /* Target byte order on ARM defaults to selectable, and defaults to little endian. */ -#define TARGET_BYTE_ORDER_SELECTABLE_P 1 +#define TARGET_BYTE_ORDER_SELECTABLE_P 1 #define TARGET_BYTE_ORDER_DEFAULT LITTLE_ENDIAN /* IEEE format floating point. */ diff --git a/gdb/config/arm/tm-embed.h b/gdb/config/arm/tm-embed.h index f42b4f2..5e9375c 100644 --- a/gdb/config/arm/tm-embed.h +++ b/gdb/config/arm/tm-embed.h @@ -32,6 +32,7 @@ #define STACK_END_ADDR (0x01000000 - (TARGET_UPAGES * TARGET_NBPG)) /* The first 0x20 bytes are the trap vectors. */ +#undef LOWEST_PC #define LOWEST_PC 0x20 /* Override defaults. */ diff --git a/gdb/config/arm/tm-linux.h b/gdb/config/arm/tm-linux.h index 3d9bf1d..af2e809 100644 --- a/gdb/config/arm/tm-linux.h +++ b/gdb/config/arm/tm-linux.h @@ -26,9 +26,9 @@ #include "tm-linux.h" -/* Target byte order on ARM Linux is not selectable. */ +/* Target byte order on ARM Linux is little endian and not selectable. */ #undef TARGET_BYTE_ORDER_SELECTABLE_P -#define TARGET_BYTE_ORDER_SELECTABLE_P 0 +#define TARGET_BYTE_ORDER_SELECTABLE_P 0 /* Under ARM Linux the traditional way of performing a breakpoint is to execute a particular software interrupt, rather than use a particular @@ -60,6 +60,21 @@ extern void arm_linux_extract_return_value (struct type *, char[], char *); #define EXTRACT_RETURN_VALUE(TYPE,REGBUF,VALBUF) \ arm_linux_extract_return_value ((TYPE), (REGBUF), (VALBUF)) +/* Things needed for making the inferior call functions. + + FIXME: This and arm_push_arguments should be merged. However this + function breaks on a little endian host, big endian target + using the COFF file format. ELF is ok. + + ScottB. */ + +#undef PUSH_ARGUMENTS +#define PUSH_ARGUMENTS(nargs, args, sp, struct_return, struct_addr) \ + sp = arm_linux_push_arguments ((nargs), (args), (sp), (struct_return), \ + (struct_addr)) +extern CORE_ADDR arm_linux_push_arguments (int, struct value **, CORE_ADDR, + int, CORE_ADDR); + /* The first page is not writeable in ARM Linux. */ #undef LOWEST_PC #define LOWEST_PC 0x8000 diff --git a/gdb/config/arm/tm-wince.h b/gdb/config/arm/tm-wince.h index 9b46135..0de5fbe 100644 --- a/gdb/config/arm/tm-wince.h +++ b/gdb/config/arm/tm-wince.h @@ -31,7 +31,8 @@ void wince_software_single_step (unsigned int, int); -#undef TARGET_BYTE_ORDER_SELECTABLE -#define TARGET_BYTE_ORDER LITTLE_ENDIAN +/* Target byte order is little endian and not selectable on WinCE. */ +#undef TARGET_BYTE_ORDER_SELECTABLE_P +#define TARGET_BYTE_ORDER_SELECTABLE_P 0 #endif /* TM_WINCE_H */ |