diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9ff88461d2..fc634276c9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2004-02-26 J. Brobecker + + * amd64-tdep.c (amd64_classify): make RANGE_TYPE objects be part + of the INTEGER class. + 2004-03-26 Jim Blandy * ppc-linux-tdep.c (ppc_linux_init_abi): Long doubles are eight diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c index 6d29163261..1a66e45b4f 100644 --- a/gdb/amd64-tdep.c +++ b/gdb/amd64-tdep.c @@ -371,8 +371,11 @@ amd64_classify (struct type *type, enum amd64_reg_class class[2]) class[0] = class[1] = AMD64_NO_CLASS; /* Arguments of types (signed and unsigned) _Bool, char, short, int, - long, long long, and pointers are in the INTEGER class. */ + long, long long, and pointers are in the INTEGER class. Similarly, + range types, used by languages such as Ada, are also in the INTEGER + class. */ if ((code == TYPE_CODE_INT || code == TYPE_CODE_ENUM + || code == TYPE_CODE_RANGE || code == TYPE_CODE_PTR || code == TYPE_CODE_REF) && (len == 1 || len == 2 || len == 4 || len == 8)) class[0] = AMD64_INTEGER;