diff options
author | Pascal Obry <obry@adacore.com> | 2011-01-04 11:33:39 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2011-01-04 11:33:39 +0000 |
commit | c6eecbd88076b786eca93fb300b46f25599c605a (patch) | |
tree | 3da07793301312715515d4e3ebc9ebb9628fc40f | |
parent | a0d43bacfc2613acd3fc75621d85611588591d8a (diff) | |
download | gcc-c6eecbd88076b786eca93fb300b46f25599c605a.zip gcc-c6eecbd88076b786eca93fb300b46f25599c605a.tar.gz gcc-c6eecbd88076b786eca93fb300b46f25599c605a.tar.bz2 |
decl.c: Disable Stdcall convention handling for 64-bit.
* gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r168460
-rw-r--r-- | gcc/ada/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/decl.c | 15 |
2 files changed, 15 insertions, 5 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 68446ac..fbb70e4 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2011-01-04 Pascal Obry <obry@adacore.com> + Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit. + 2011-01-04 Eric Botcazou <ebotcazou@adacore.com> * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index ad742aa..a10fc2d 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -6,7 +6,7 @@ * * * C Implementation File * * * - * Copyright (C) 1992-2010, Free Software Foundation, Inc. * + * Copyright (C) 1992-2011, Free Software Foundation, Inc. * * * * GNAT is free software; you can redistribute it and/or modify it under * * terms of the GNU General Public License as published by the Free Soft- * @@ -50,14 +50,19 @@ #include "ada-tree.h" #include "gigi.h" -/* Convention_Stdcall should be processed in a specific way on Windows targets - only. The macro below is a helper to avoid having to check for a Windows - specific attribute throughout this unit. */ +/* Convention_Stdcall should be processed in a specific way on 32 bits + Windows targets only. The macro below is a helper to avoid having to + check for a Windows specific attribute throughout this unit. */ #if TARGET_DLLIMPORT_DECL_ATTRIBUTES +#ifdef TARGET_64BIT +#define Has_Stdcall_Convention(E) \ + (!TARGET_64BIT && Convention (E) == Convention_Stdcall) +#else #define Has_Stdcall_Convention(E) (Convention (E) == Convention_Stdcall) +#endif #else -#define Has_Stdcall_Convention(E) (0) +#define Has_Stdcall_Convention(E) 0 #endif /* Stack realignment is necessary for functions with foreign conventions when |