merge from gcc

This commit is contained in:
DJ Delorie 2001-10-23 15:32:45 +00:00
parent 1a3d33ce81
commit d311a83ab4
4 changed files with 104 additions and 12 deletions

View file

@ -1,3 +1,10 @@
2001-10-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* libiberty.h (hex_init): Revert delete.
* libiberty.h (_hex_value): Const-ify.
(hex_init): Delete.
2001-10-16 Christopher Faylor <cgf@redhat.com> 2001-10-16 Christopher Faylor <cgf@redhat.com>
* filenames.h: Add cygwin to the list of dosish style path systems. * filenames.h: Add cygwin to the list of dosish style path systems.

View file

@ -240,7 +240,7 @@ extern PTR xmemdup PARAMS ((const PTR, size_t, size_t)) ATTRIBUTE_MALLOC;
#define _hex_array_size 256 #define _hex_array_size 256
#define _hex_bad 99 #define _hex_bad 99
extern char _hex_value[_hex_array_size]; extern const char _hex_value[_hex_array_size];
extern void hex_init PARAMS ((void)); extern void hex_init PARAMS ((void));
#define hex_p(c) (hex_value (c) != _hex_bad) #define hex_p(c) (hex_value (c) != _hex_bad)
/* If you change this, note well: Some code relies on side effects in /* If you change this, note well: Some code relies on side effects in

View file

@ -1,3 +1,10 @@
2001-10-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* hex.c (hex_init): Provide empty stub.
* hex.c (hex_init): Delete.
(_hex_value): Const-ify and initialize at compile-time.
2001-10-19 H.J. Lu <hjl@gnu.org> 2001-10-19 H.J. Lu <hjl@gnu.org>
* Makefile.in ($(TARGETLIB)): Also generate pic/$(TARGETLIB) if * Makefile.in ($(TARGETLIB)): Also generate pic/$(TARGETLIB) if

View file

@ -1,5 +1,5 @@
/* Hex character manipulation support. /* Hex character manipulation support.
Copyright (C) 1995 Free Software Foundation, Inc. Copyright (C) 1995, 2001 Free Software Foundation, Inc.
This file is part of the libiberty library. This file is part of the libiberty library.
Libiberty is free software; you can redistribute it and/or Libiberty is free software; you can redistribute it and/or
@ -17,17 +17,95 @@ License along with libiberty; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */ Boston, MA 02111-1307, USA. */
#include <stdio.h> /* for EOF */
#include "libiberty.h" #include "libiberty.h"
char _hex_value[_hex_array_size]; /* Provided for ABI compatibility. */
void
void hex_init () hex_init ()
{ {
int i;
for (i = 0; i < _hex_array_size; i++)
_hex_value[i] = _hex_bad;
for (i = 0; i < 10; i++)
_hex_value['0' + i] = i;
for (i = 0; i < 6; i++)
_hex_value['a' + i] = _hex_value['A' + i] = 10 + i;
} }
/* Are we ASCII? */
#if '\n' == 0x0A && ' ' == 0x20 && '0' == 0x30 \
&& 'A' == 0x41 && 'a' == 0x61 && '!' == 0x21 \
&& EOF == -1
const char _hex_value[_hex_array_size] =
{
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* NUL SOH STX ETX */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* EOT ENQ ACK BEL */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* BS HT LF VT */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* FF CR SO SI */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* DLE DC1 DC2 DC3 */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* DC4 NAK SYN ETB */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* CAN EM SUB ESC */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* FS GS RS US */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* SP ! " # */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* $ % & ' */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* ( ) * + */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* , - . / */
0, 1, 2, 3, /* 0 1 2 3 */
4, 5, 6, 7, /* 4 5 6 7 */
8, 9, _hex_bad, _hex_bad, /* 8 9 : ; */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* < = > ? */
_hex_bad, 10, 11, 12, /* @ A B C */
13, 14, 15, _hex_bad, /* D E F G */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* H I J K */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* L M N O */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* P Q R S */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* T U V W */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* X Y Z [ */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* \ ] ^ _ */
_hex_bad, 10, 11, 12, /* ` a b c */
13, 14, 15, _hex_bad, /* d e f g */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* h i j k */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* l m n o */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* p q r s */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* t u v w */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* x y z { */
_hex_bad, _hex_bad, _hex_bad, _hex_bad, /* | } ~ DEL */
/* The high half of unsigned char, all values are _hex_bad. */
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
_hex_bad, _hex_bad, _hex_bad, _hex_bad,
};
#else
#error "Unsupported host character set"
#endif /* not ASCII */