diff options
Diffstat (limited to 'sim')
-rw-r--r-- | sim/sh/ChangeLog | 4 | ||||
-rw-r--r-- | sim/sh/interp.c | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/sim/sh/ChangeLog b/sim/sh/ChangeLog index 5d6a146..4f2aea3 100644 --- a/sim/sh/ChangeLog +++ b/sim/sh/ChangeLog @@ -1,3 +1,7 @@ +2005-08-02 J"orn Rennecke <joern.rennecke@st.com> + + * interp.c (strswaplen): Add one for '\0' delimiter. + 2005-06-16 Daniel Jacobowitz <dan@codesourcery.com> * gencode.c (tab): Avoid lvalue casts. Suggested by diff --git a/sim/sh/interp.c b/sim/sh/interp.c index 5d4a4f5..107842b 100644 --- a/sim/sh/interp.c +++ b/sim/sh/interp.c @@ -959,6 +959,10 @@ ptr (x) return (char *) (x + saved_state.asregs.memory); } +/* STR points to a zero-terminated string in target byte order. Return + the number of bytes that need to be converted to host byte order in order + to use this string as a zero-terminated string on the host. + (Not counting the rounding up needed to operate on entire words.) */ static int strswaplen (str) int str; @@ -971,7 +975,7 @@ strswaplen (str) return 0; end = str; for (end = str; memory[end ^ endian]; end++) ; - return end - str; + return end - str + 1; } static void |