diff options
Diffstat (limited to 'sim/ppc')
-rw-r--r-- | sim/ppc/ChangeLog | 14 | ||||
-rw-r--r-- | sim/ppc/device_tree.c | 2 | ||||
-rw-r--r-- | sim/ppc/psim.c | 19 | ||||
-rw-r--r-- | sim/ppc/sim_calls.c | 1 |
4 files changed, 27 insertions, 9 deletions
diff --git a/sim/ppc/ChangeLog b/sim/ppc/ChangeLog index 0d34501..29b3692 100644 --- a/sim/ppc/ChangeLog +++ b/sim/ppc/ChangeLog @@ -1,3 +1,17 @@ +Mon Nov 6 20:49:56 1995 Andrew Cagney <cagney@highland.com.au> + + * sim_calls.c (sim_open): Fix parsing of `target sim' options. + + * device_tree.c (device_tree_add_string): Wasn't saving the value + of the string being entered into the tree. + + * psim.c (create_filed_device_tree): Not terminating string device + names with a null. + + * psim.c (psim_create): Use `env' instead of + `environment-architecture' to be consistent with configure. + Reconize user/uea, virtual/vea and operating/oea. + Sat Nov 4 12:29:45 1995 Fred Fish <fnf@cygnus.com> * core.c: Rename to corefile.c diff --git a/sim/ppc/device_tree.c b/sim/ppc/device_tree.c index 3442ba8..2997388 100644 --- a/sim/ppc/device_tree.c +++ b/sim/ppc/device_tree.c @@ -279,7 +279,7 @@ device_tree_add_string(device_tree *root, path, /* full-name */ node_string, device_tree_grow); - new_node->string = string; + new_node->string = strdup(string); TRACE(trace_device_tree, ("device_tree_add_string() = 0x%x\n", new_node)); return new_node; diff --git a/sim/ppc/psim.c b/sim/ppc/psim.c index 03b57fe..60acc9b 100644 --- a/sim/ppc/psim.c +++ b/sim/ppc/psim.c @@ -121,7 +121,7 @@ create_hardware_device_tree(bfd *image, MAX_NR_PROCESSORS); device_tree_add_boolean(root, "/options/little-endian?", !image->xvec->byteorder_big_p); - device_tree_add_string(root, "/options/environment-architecture", + device_tree_add_string(root, "/options/env", "operating"); device_tree_add_boolean(root, "/options/strict-alignment?", (WITH_ALIGNMENT == STRICT_ALIGNMENT @@ -209,7 +209,7 @@ create_vea_device_tree(bfd *image, device_tree_add_integer(root, "/options/smp", 1); /* always */ device_tree_add_boolean(root, "/options/little-endian?", !image->xvec->byteorder_big_p); - device_tree_add_string(root, "/options/environment-architecture", + device_tree_add_string(root, "/options/env", (WITH_ENVIRONMENT == USER_ENVIRONMENT ? "user" : "virtual")); device_tree_add_boolean(root, "/options/strict-alignment?", @@ -303,7 +303,7 @@ create_filed_device_tree(const char *file_name, } else { /* any thing else */ - space = '\0'; + *space = '\0'; device_tree_add_string(root, device_path, space + 1); } } @@ -410,16 +410,19 @@ psim_create(const char *file_name) /* fill in the missing OEA/VEA information */ env = device_tree_find_string(system->devices, - "/options/environment-architecture"); - current_environment = (strcmp(env, "user") == 0 + "/options/env"); + current_environment = ((strcmp(env, "user") == 0 + || strcmp(env, "uea") == 0) ? USER_ENVIRONMENT - : strcmp(env, "virtual") == 0 + : (strcmp(env, "virtual") == 0 + || strcmp(env, "vea") == 0) ? VIRTUAL_ENVIRONMENT - : strcmp(env, "operating") == 0 + : (strcmp(env, "operating") == 0 + || strcmp(env, "oea") == 0) ? OPERATING_ENVIRONMENT : 0); if (current_environment == 0) - error("unreconized /options/environment-architecture\n"); + error("unreconized /options/env\n"); if (CURRENT_ENVIRONMENT != current_environment) error("target environment conflict\n"); diff --git a/sim/ppc/sim_calls.c b/sim/ppc/sim_calls.c index 8121c94..32bd4f5 100644 --- a/sim/ppc/sim_calls.c +++ b/sim/ppc/sim_calls.c @@ -91,6 +91,7 @@ sim_open (char *args) print_info = 1; break; } + p += 1; } } argp += 1; |