aboutsummaryrefslogtreecommitdiff
path: root/gdb/amd64-tdep.c
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2004-03-26 23:15:40 +0000
committerJoel Brobecker <brobecker@gnat.com>2004-03-26 23:15:40 +0000
commit5a7225edc7080494da856b543861b0a90fa8997a (patch)
tree27591f03ed51ea0d8f13d31491fe4a1d7ecc1af6 /gdb/amd64-tdep.c
parent7a3dbe4bf6579438697838729bfce27a5dec975f (diff)
downloadgdb-5a7225edc7080494da856b543861b0a90fa8997a.zip
gdb-5a7225edc7080494da856b543861b0a90fa8997a.tar.gz
gdb-5a7225edc7080494da856b543861b0a90fa8997a.tar.bz2
* amd64-tdep.c (amd64_classify): make RANGE_TYPE objects be part
of the INTEGER class.
Diffstat (limited to 'gdb/amd64-tdep.c')
-rw-r--r--gdb/amd64-tdep.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index 6d29163..1a66e45 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;