diff options
author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-20 17:01:32 +0000 |
---|---|---|
committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-20 17:01:32 +0000 |
commit | 624d37a67346eddd65841cd7093190b69a5db148 (patch) | |
tree | 60cdafb935d90504cac1d3437ff96f90d70b9c09 /gcc/config/mips/mips.c | |
parent | 628dfe67321e94b743a840ef4e2ee5d0b75a9e02 (diff) | |
download | gcc-624d37a67346eddd65841cd7093190b69a5db148.tar.gz |
PR 18785
libcpp:
* charset.c (LAST_POSSIBLY_BASIC_SOURCE_CHAR): New helper macro.
(cpp_host_to_exec_charset): New function.
* include/cpplib.h: Declare cpp_host_to_exec_charset.
gcc:
* langhooks.h (struct lang_hooks): Add to_target_charset.
* langhooks.c (lhd_to_target_charset): New function.
* langhooks-def.h: Declare lhd_to_target_charset.
(LANG_HOOKS_TO_TARGET_CHARSET): New macro.
(LANG_HOOKS_INITIALIZER): Update.
* c-common.c (c_common_to_target_charset): New function.
* c-common.h: Declare it.
* c-objc-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
c_common_to_target_charset.
* defaults.c (TARGET_BELL, TARGET_BS, TARGET_CR, TARGET_DIGIT0)
(TARGET_ESC, TARGET_FF, TARGET_NEWLINE, TARGET_TAB, TARGET_VT):
Delete definitions.
* system.h: Poison them.
* doc/tm.texi: Don't discuss them.
* builtins.c (fold_builtin_isdigit): Use lang_hooks.to_target_charset.
* c-pretty-print.c (pp_c_integer_constant): Don't use pp_c_char.
(pp_c_char): Do not attempt to generate letter escapes for
newline, tab, etc.
* config/arm/arm.c (output_ascii_pseudo_op): Likewise.
* config/mips/mips.c (mips_output_ascii): Likewise.
gcc/cp:
* cp-objcp-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
c_common_to_target_charset. Delete bogus comment.
gcc/testsuite:
* gcc.dg/charset/builtin1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95304 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mips/mips.c')
-rw-r--r-- | gcc/config/mips/mips.c | 56 |
1 files changed, 10 insertions, 46 deletions
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index b295ffcb8e1..acd6ae0a704 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -5135,56 +5135,20 @@ mips_output_ascii (FILE *stream, const char *string_param, size_t len, { register int c = string[i]; - switch (c) + if (ISPRINT (c)) { - case '\"': - case '\\': - putc ('\\', stream); - putc (c, stream); - cur_pos += 2; - break; - - case TARGET_NEWLINE: - fputs ("\\n", stream); - if (i+1 < len - && (((c = string[i+1]) >= '\040' && c <= '~') - || c == TARGET_TAB)) - cur_pos = 32767; /* break right here */ - else - cur_pos += 2; - break; - - case TARGET_TAB: - fputs ("\\t", stream); - cur_pos += 2; - break; - - case TARGET_FF: - fputs ("\\f", stream); - cur_pos += 2; - break; - - case TARGET_BS: - fputs ("\\b", stream); - cur_pos += 2; - break; - - case TARGET_CR: - fputs ("\\r", stream); - cur_pos += 2; - break; - - default: - if (c >= ' ' && c < 0177) + if (c == '\\' || c == '\"') { - putc (c, stream); + putc ('\\', stream); cur_pos++; } - else - { - fprintf (stream, "\\%03o", c); - cur_pos += 4; - } + putc (c, stream); + cur_pos++; + } + else + { + fprintf (stream, "\\%03o", c); + cur_pos += 4; } if (cur_pos > 72 && i+1 < len) |