diff options
Diffstat (limited to 'sim')
-rw-r--r-- | sim/arm/ChangeLog | 6 | ||||
-rw-r--r-- | sim/arm/wrapper.c | 21 |
2 files changed, 25 insertions, 2 deletions
diff --git a/sim/arm/ChangeLog b/sim/arm/ChangeLog index 9ce404e..a397330 100644 --- a/sim/arm/ChangeLog +++ b/sim/arm/ChangeLog @@ -1,3 +1,9 @@ +2002-09-27 Andrew Cagney <ac131313@redhat.com> + + * wrapper.c (sim_open): Add support for -m<mem-size>. + (mem_size): Reduce to 2MB. + Fix PR gdb/433. + 2002-08-15 Nick Clifton <nickc@redhat.com> * armos.c (ARMul_OSHandleSWI): Catch and ignore SWIs of -1, they diff --git a/sim/arm/wrapper.c b/sim/arm/wrapper.c index c8361ba..262e2e7 100644 --- a/sim/arm/wrapper.c +++ b/sim/arm/wrapper.c @@ -49,7 +49,7 @@ static SIM_OPEN_KIND sim_kind; static char *myname; /* Memory size in bytes. */ -static int mem_size = (1 << 23); +static int mem_size = (1 << 21); /* Non-zero to display start up banner, and maybe other things. */ static int verbosity; @@ -632,7 +632,7 @@ sim_open (kind, ptr, abfd, argv) { int i; - /* Scan for endian-ness switch. */ + /* Scan for endian-ness and memory-size switches. */ for (i = 0; (argv[i] != NULL) && (argv[i][0] != 0); i++) if (argv[i][0] == '-' && argv[i][1] == 'E') { @@ -667,6 +667,23 @@ sim_open (kind, ptr, abfd, argv) break; } } + else if (argv[i][0] == '-' && argv[i][1] == 'm') + { + if (argv[i][2] != '\0') + sim_size (atoi (&argv[i][2])); + else if (argv[i + 1] != NULL) + { + sim_size (atoi (argv[i + 1])); + i++; + } + else + { + sim_callback->printf_filtered (sim_callback, + "Missing argument to -m option\n"); + return NULL; + } + + } } return (SIM_DESC) 1; |