Revert use of classify callback in i386 gdbarch_tdep.
authorJoel Brobecker <brobecker@gnat.com>
Tue, 24 Sep 2013 16:14:15 +0000 (16:14 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Tue, 24 Sep 2013 16:14:15 +0000 (16:14 +0000)
commitbf4d6c1cfc72fc4d60becc31cb9076d3185c8cfe
tree53326a3d29b8f7f02aba5858ee978feb0b3a10fd
parent849e9755046dee69b1032fd2a9d9001cd69ca2c7
Revert use of classify callback in i386 gdbarch_tdep.

This is no longer useful, as it was introduced to reuse the funcall
handling code in amd64-tdep.c in the context of x64-windows. But
we have since then changed the implementations to be completely
independent of each other.

This reverts the non-windows-specific part of the change called:
    amd64: Integer parameters in function calls on Windows
(the x64-windows portion has already been reverted)

gdb/ChangeLog:

Revert:
* i386-tdep.h (enum amd64_reg_class): New, moved here from
amd64-tdep.c.
(struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
call_dummy_integer_regs, and classify.
* amd64-tdep.h (amd64_classify): Add declaration.
* amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
(amd64_reg_class): Delete, moved to i386-tdep.h.
(amd64_classify): Make non-static.  Move declaration to amd64-tdep.h.
Replace call to amd64_classify by call to tdep->classify.
(amd64_push_arguments): Get the list of registers to use for
passing integer parameters from the gdbarch tdep structure,
rather than using a hardcoded one.  Replace calls to amd64_classify
by calls to tdep->classify.
(amd64_push_dummy_call): Get the register number used for
the "hidden" argument from tdep->call_dummy_integer_regs.
(amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
and tdep->call_dummy_integer_regs.  Set tdep->classify.
gdb/ChangeLog
gdb/amd64-tdep.c
gdb/amd64-tdep.h
gdb/i386-tdep.h