-/* Copyright (C) 2009-2016 Free Software Foundation, Inc.
+/* Copyright (C) 2009-2017 Free Software Foundation, Inc.
This file is part of GDB.
#include "defs.h"
#include "osabi.h"
#include "amd64-tdep.h"
+#include "x86-xstate.h"
#include "gdbtypes.h"
#include "gdbcore.h"
#include "regcache.h"
#include "coff/pe.h"
#include "libcoff.h"
#include "value.h"
+#include <algorithm>
/* The registers used to pass integer arguments during a function call. */
static int amd64_windows_dummy_call_integer_regs[] =
case TYPE_CODE_CHAR:
case TYPE_CODE_PTR:
case TYPE_CODE_REF:
+ case TYPE_CODE_RVALUE_REF:
case TYPE_CODE_STRUCT:
case TYPE_CODE_UNION:
return (TYPE_LENGTH (type) == 1
gdb_assert (TYPE_LENGTH (type) <= 8);
memset (buf, 0, sizeof buf);
- memcpy (buf, valbuf, min (TYPE_LENGTH (type), 8));
+ memcpy (buf, valbuf, std::min (TYPE_LENGTH (type), (unsigned int) 8));
regcache_cooked_write (regcache, regno, buf);
}
else if (target_read_memory (image_base + unwind_info,
(gdb_byte *) &ex_ui, sizeof (ex_ui)) == 0
&& PEX64_UWI_VERSION (ex_ui.Version_Flags) == 1)
- return max (pc, image_base + start_rva + ex_ui.SizeOfPrologue);
+ return std::max (pc, image_base + start_rva + ex_ui.SizeOfPrologue);
}
/* See if we can determine the end of the prologue via the symbol
= skip_prologue_using_sal (gdbarch, func_addr);
if (post_prologue_pc != 0)
- return max (pc, post_prologue_pc);
+ return std::max (pc, post_prologue_pc);
}
return pc;
*/
frame_unwind_append_unwinder (gdbarch, &amd64_windows_frame_unwind);
- amd64_init_abi (info, gdbarch);
+ amd64_init_abi (info, gdbarch,
+ amd64_target_description (X86_XSTATE_SSE_MASK));
windows_init_abi (info, gdbarch);
set_gdbarch_auto_wide_charset (gdbarch, amd64_windows_auto_wide_charset);
}
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_amd64_windows_tdep;
-
void
_initialize_amd64_windows_tdep (void)
{