How should _Decimal64 and _Decimal128 be aligned on stack?

2008-03-21 Thread H.J.
When passing _Decimal64 or _Decimal128 to a function via stack, how should they be aligned? Currently, gcc aligns them at 4byte boundary. Is this desirable? H.J.

Re: Git ChangeLog policy for GCC Testsuite inquiry

2020-01-24 Thread H.J. Lu
comments. This is common practice, and a good idea because bad > commit messages are always a bummer, ChangeLog or not. > Libgcrypt includes ChangeLog entries in git commit messages: http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git In each patch, commit log starts with ChangeLog entries without leading TABs followed by separator line with -- and then commit message. They have a script to extract ChangeLog for release. -- H.J.

Re: Git question: Rebasing a user branch

2020-02-04 Thread H.J. Lu
uiltins > (thus creating a new branch). It seems like there may be a missing > "users/" needed someplace. But I am not at all confident that's > correct. I'm a little suspicious of the push spec in my config. > > Can someone with strong git-fu give me any suggestions? > > Best regards, > Bill > -- H.J.

Re: GCC 9.3 Status Report (2020-02-28)

2020-02-28 Thread H.J. Lu
+return strcpy (newname, name); /* Copy over .comment section under the same name if present. Solaris ld uses them to relax its checking of ELF gABI access rules for COMDAT sections in objects produced by GCC. */ I'd like to backport it to GCC 9 if possible. -- H.J.

Re: Second GCC 8.4 Release Candidate available from gcc.gnu.org

2020-03-02 Thread H.J. Lu
elease 8.4 on Wednesday, March 4th. > I'd like to backport: commit r10-6965-g577350603a657590c4b54a4a966cb49497e2514c Author: H.J. Lu Date: Mon Mar 2 03:08:57 2020 -0800 lto: Also copy .note.gnu.property section When generating the separate file with LTO debug sections, we s

Re: Second GCC 8.4 Release Candidate available from gcc.gnu.org

2020-03-02 Thread H.J. Lu
On Mon, Mar 2, 2020 at 3:46 AM Jakub Jelinek wrote: > > On Mon, Mar 02, 2020 at 03:41:06AM -0800, H.J. Lu wrote: > > On Mon, Mar 2, 2020 at 2:46 AM Jakub Jelinek wrote: > > > > > > The second release candidate for GCC 8.4 is available from > > > > > &

Re: GCC 8.5 Status Report (2020-03-04)

2020-03-04 Thread H.J. Lu
xecution test FAIL: 22_locale/time_get/get_time/wchar_t/wrapped_env.cc execution test FAIL: 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc execution test Are they expected? -- H.J.

Re: GCC 8.5 Status Report (2020-03-04)

2020-03-04 Thread H.J. Lu
On Wed, Mar 4, 2020 at 5:01 AM Jakub Jelinek wrote: > > On Wed, Mar 04, 2020 at 04:52:20AM -0800, H.J. Lu wrote: > > I saw these new failures on Fedora 31: > > > > FAIL: 22_locale/numpunct/members/char/3.cc execution test > > FAIL: 22_locale/time_get/get_time/cha

X86 GCC automated testers are back online

2020-03-09 Thread H.J. Lu
failures as well as new passes, are also reported: https://gcc.gnu.org/pipermail/gcc-regression/2020-March/072492.html https://gcc.gnu.org/pipermail/gcc-regression/2020-March/072495.html -- H.J.

Re: Code size issues on FP-emulation on libgcc compared to LLVM's compiler_rt

2015-06-30 Thread H.J. Lu
0522 T __addsf3 > > So the size is ~0.5K. > > Why so large difference in libgcc and compiler_rt for the same functionality? > The size difference comes from soft-fp implementation, not from compiler codegen. Does soft-fp have higher accuracy and more features? -- H.J.

Re: Code size issues on FP-emulation on libgcc compared to LLVM's compiler_rt

2015-06-30 Thread H.J. Lu
ation work). > > soft-fp is expected to be used on 32-bit and 64-bit systems for which a > few kB code size is insignificant. Size is very important for IA MCU. Would it be acceptable to update soft-fp to optimize for size with #ifdef __OPTIMIZE_SIZE__ #else #endif -- H.J.

RFC: Add R_X86_64_INDBR_GOTPCREL and R_386_INDBR_GOT32

2015-07-01 Thread H.J. Lu
assembler and linker. Assembler should generate R_386_INDBR_GOT32 relocation, instead of R_386_GOT32 relocation, for “call/jmp *foo@GOT(%reg)”. GCC also needs to modify to generate “call/jmp *foo@GOT” in non-PIC mode. H.J.

Re: Question about DRAP register and reserving hard registers

2015-07-09 Thread H.J. Lu
se of > this value. This is a very old patch for DRAP unwind with stack alignment: https://gcc.gnu.org/ml/gcc-patches/2008-07/msg00651.html You can also grep drap_reg in dwarf2out.c. -- H.J.

Re: configure.{in -> ac} rename (commit 35eafcc71b) broke in-tree binutils building of gcc

2015-07-14 Thread H.J. Lu
ything. Combined tree is useful when the latest binutils is needed by GCC. -- H.J.

Re: configure.{in -> ac} rename (commit 35eafcc71b) broke in-tree binutils building of gcc

2015-07-14 Thread H.J. Lu
suggests. > > > Combined builds are very useful for doing Candian crosses. Though it might > just because my build script has been doing a combined build now for 5 years. > Also I noticed it was broken and ignored it as my script did not break, only > when I did a native build did it break. > We should fix gcc/configure.ac. -- H.J.

PATCH: Also check configure.ac in binutils source tree

2015-07-15 Thread H.J. Lu
On Tue, Jul 14, 2015 at 7:06 PM, H.J. Lu wrote: > On Tue, Jul 14, 2015 at 7:00 PM, wrote: >> >> >> >>> On Jul 15, 2015, at 9:20 AM, Alan Modra wrote: >>> >>>> On Tue, Jul 14, 2015 at 10:13:06AM +0100, Jan Beulich wrote: >>>> Al

[PATCH] PR rtl-optimization/67029: gcc-5.2.0 unable to find a register to spill with O3 fsched-pressure fschedule-insns

2015-08-05 Thread H.J. Lu
Since ira_implicitly_set_insn_hard_regs may be called outside of ira-lives.c, it can't use the local variable, preferred_alternatives. This patch adds an alternative_mask argument to ira_implicitly_set_insn_hard_regs. OK for master and 5 branch if there are no regressions on Linux/x86-64?

Re: [PATCH] PR rtl-optimization/67029: gcc-5.2.0 unable to find a register to spill with O3 fsched-pressure fschedule-insns

2015-08-06 Thread H.J. Lu
On Thu, Aug 6, 2015 at 11:19 AM, Richard Sandiford wrote: > "H.J. Lu" writes: >> Since ira_implicitly_set_insn_hard_regs may be called outside of >> ira-lives.c, it can't use the local variable, preferred_alternatives. >> This patch

Re: Adding static-PIE support to binutils

2015-08-17 Thread H.J. Lu
amic in link_info.dynamic after > processing the command line, but I'm not sure if this is the right > approach. It is OK to use -static/-Bstatic/-non_shared with -shared and -pie. I think you want --no-dynamic-linker. -- H.J.

Re: Adding static-PIE support to binutils

2015-08-17 Thread H.J. Lu
On Mon, Aug 17, 2015 at 3:43 PM, Rich Felker wrote: > On Mon, Aug 17, 2015 at 02:19:34PM -0700, H.J. Lu wrote: >> On Tue, Jun 23, 2015 at 9:18 PM, Rich Felker wrote: >> > For background on the static PIE model I'm working with, see the >> > following post

Re: Adding static-PIE support to binutils

2015-08-18 Thread H.J. Lu
On Mon, Aug 17, 2015 at 8:44 PM, Rich Felker wrote: > On Mon, Aug 17, 2015 at 10:42:56PM -0400, Rich Felker wrote: >> On Mon, Aug 17, 2015 at 02:19:34PM -0700, H.J. Lu wrote: >> > On Tue, Jun 23, 2015 at 9:18 PM, Rich Felker wrote: >> > > For background on the sta

Re: Adding static-PIE support to binutils

2015-08-18 Thread H.J. Lu
On Tue, Aug 18, 2015 at 9:08 AM, Rich Felker wrote: > On Tue, Aug 18, 2015 at 08:56:00AM -0700, H.J. Lu wrote: >> On Mon, Aug 17, 2015 at 8:44 PM, Rich Felker wrote: >> > On Mon, Aug 17, 2015 at 10:42:56PM -0400, Rich Felker wrote: >> >> On Mon, Aug 17, 2015 at 0

Re: Adding static-PIE support to binutils

2015-08-18 Thread H.J. Lu
On Tue, Aug 18, 2015 at 5:58 PM, Rich Felker wrote: > On Tue, Aug 18, 2015 at 09:30:56AM -0700, H.J. Lu wrote: >> On Tue, Aug 18, 2015 at 9:08 AM, Rich Felker wrote: >> > On Tue, Aug 18, 2015 at 08:56:00AM -0700, H.J. Lu wrote: >> >> On Mon, Aug 17, 2015

Re: Moving to git

2015-08-21 Thread H.J. Lu
istory > b. no git merges from feature branches. One very frustrating thing for me is "git bisect" doesn't always work. I think cherry-pick is OK, but probably not rebase nor merge. Can we enforce that "git bisect" must work on official branches? -- H.J.

Re: Moving to git

2015-08-21 Thread H.J. Lu
my local git repo. -- H.J.

Re: Moving to git

2015-08-21 Thread H.J. Lu
On Fri, Aug 21, 2015 at 7:33 AM, Andreas Schwab wrote: > "H.J. Lu" writes: > >> One very frustrating thing for me is "git bisect" doesn't always >> work. I think cherry-pick is OK, but probably not rebase nor merge. >> >> Can we e

Re: Moving to git

2015-08-21 Thread H.J. Lu
On Fri, Aug 21, 2015 at 8:39 AM, Andreas Schwab wrote: > "H.J. Lu" writes: > >> up to date by "git merge origin/master". I never tried "git bisect" >> on it since I know that commits on that branch aren't consecutive. > > bisect works

Re: Moving to git

2015-08-21 Thread H.J. Lu
On Fri, Aug 21, 2015 at 9:01 AM, Andreas Schwab wrote: > "H.J. Lu" writes: > >> "git bisect good"/"git bisect bad" land my tree not on trunk when >> they are used on commits from wide-int branch merge. > > Yes, that is bisect working a

RFC: Support x86 interrupt and exception handlers

2015-09-03 Thread H.J. Lu
void *p = __builtin_ia32_interrupt_data (); ... } 3. 'exception' attribute Use 'exception' instead of 'interrupt' for handlers intended to be used for 'exception' (i.e. those that must pop 'ERROR_CODE' off the stack before the 'IRET' instruction): void f () __attribute__ ((exception)) { void *p = __builtin_ia32_interrupt_data (); ... } Any comments, suggestions? Thanks. -- H.J.

Re: RFC: Support x86 interrupt and exception handlers

2015-09-15 Thread H.J. Lu
On Thu, Sep 3, 2015 at 10:37 AM, H.J. Lu wrote: > The interrupt and exception handlers are called by x86 processors. X86 > hardware puts information on stack and calls the handler. The > requirements are > > 1. Both interrupt and exception handlers must use the 'IRET'

Re: RFC: Support x86 interrupt and exception handlers

2015-09-15 Thread H.J. Lu
On Tue, Sep 15, 2015 at 2:45 PM, Matthew Fortune wrote: > H.J. Lu writes: >> On Thu, Sep 3, 2015 at 10:37 AM, H.J. Lu wrote: >> > The interrupt and exception handlers are called by x86 processors. X86 >> > hardware puts information on stack and calls the handler.

Re: RFC: Support x86 interrupt and exception handlers

2015-09-16 Thread H.J. Lu
On Wed, Sep 16, 2015 at 12:07 AM, Matthew Fortune wrote: > H.J. Lu writes: >> On Tue, Sep 15, 2015 at 2:45 PM, Matthew Fortune >> wrote: >> > H.J. Lu writes: >> >> On Thu, Sep 3, 2015 at 10:37 AM, H.J. Lu wrote: >> >> > The interrupt and ex

Re: RFC: Support x86 interrupt and exception handlers

2015-09-17 Thread H.J. Lu
On Tue, Sep 15, 2015 at 1:11 PM, H.J. Lu wrote: >> To implement interrupt and exception handlers for x86 processors, a >> compiler should support: >> >> 1. void * __builtin_ia32_interrupt_data (void) > > I got a feedback on the name of this builtin function. Since &

Re: RFC: Support x86 interrupt and exception handlers

2015-09-21 Thread H.J. Lu
On Thu, Sep 17, 2015 at 12:26 PM, H.J. Lu wrote: > On Tue, Sep 15, 2015 at 1:11 PM, H.J. Lu wrote: >>> To implement interrupt and exception handlers for x86 processors, a >>> compiler should support: >>> >>> 1. void * __builtin_ia32_interrupt_data (void

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-21 Thread H.J. Lu
On Mon, Sep 21, 2015 at 11:52 AM, John Criswell wrote: > On 9/21/15 12:27 PM, H.J. Lu via cfe-dev wrote: >> >> On Thu, Sep 17, 2015 at 12:26 PM, H.J. Lu wrote: >>> >>> On Tue, Sep 15, 2015 at 1:11 PM, H.J. Lu wrote: >>>>> >>>>> To i

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-21 Thread H.J. Lu
On Mon, Sep 21, 2015 at 2:23 PM, John Criswell wrote: > On 9/21/15 4:45 PM, H.J. Lu wrote: >> >> On Mon, Sep 21, 2015 at 11:52 AM, John Criswell >> wrote: >>> >>> On 9/21/15 12:27 PM, H.J. Lu via cfe-dev wrote: >>>> >>>> On Thu, Se

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-21 Thread H.J. Lu
On Mon, Sep 21, 2015 at 3:40 PM, Hal Finkel wrote: > - Original Message - >> From: "H.J. Lu via cfe-dev" >> To: "GCC Development" , cfe-...@lists.llvm.org >> Sent: Monday, September 21, 2015 11:27:18 AM >> Subject: Re: [cfe-dev] RFC: Suppor

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-21 Thread H.J. Lu
On Mon, Sep 21, 2015 at 4:03 PM, Hal Finkel wrote: > - Original Message - >> From: "H.J. Lu" >> To: "Hal Finkel" >> Cc: "GCC Development" , cfe-...@lists.llvm.org >> Sent: Monday, September 21, 2015 5:57:36 PM >> Subject:

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-22 Thread H.J. Lu
On Tue, Sep 22, 2015 at 1:11 AM, Hal Finkel wrote: > - Original Message - >> From: "H.J. Lu" >> To: "Hal Finkel" >> Cc: "GCC Development" , cfe-...@lists.llvm.org >> Sent: Monday, September 21, 2015 7:17:20 PM >> Subject:

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-22 Thread H.J. Lu
On Tue, Sep 22, 2015 at 1:41 AM, David Chisnall wrote: > On 21 Sep 2015, at 21:45, H.J. Lu via cfe-dev wrote: >> >> The main purpose of x86 interrupt attribute is to allow programmers >> to write x86 interrupt/exception handlers in C WITHOUT assembly >> stubs to avoid

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-22 Thread H.J. Lu
On Tue, Sep 22, 2015 at 4:44 AM, David Chisnall wrote: > On 22 Sep 2015, at 12:39, H.J. Lu via cfe-dev wrote: >> >> The center piece of my proposal is not to change how parameters >> are passed in compiler. As for user experience, the feedbacks on >> my proposal from

Re: [cfe-dev] RFC: Support x86 interrupt and exception handlers

2015-09-23 Thread H.J. Lu
on has the correct signature in the > hook adding the attribute. It should also be easy to check for the attribute > at the beginning of ix86_function_arg et al, in order to handle these special > cases. > Thanks for all feedbacks. Here is the updated spec. -- H.J. --- The interr

Re: different results from objdump for Ubuntu and Windows

2015-09-28 Thread H.J. Lu
n a bug report. -- H.J.

Re: gold on trunk breaks aarch64- and arm32-linux (Re: [gold][PATCH] PR gold/19119: Gold accepts bogus target emulation)

2015-10-25 Thread H.J. Lu
$ gcc -fuse-ld=gold foo.c > /usr/bin/ld.gold: error: unrecognised output emulation: armelf_linux_eabi > collect2: error: ld returned 1 exit status > What do ld.bfd -V and ld.gold -V report? They should support the same set of emulations. -- H.J.

Re: gold on trunk breaks powerpc-, aarch64- and arm32-linux (Re: [gold][PATCH] PR gold/19119: Gold accepts bogus target emulation)

2015-10-25 Thread H.J. Lu
On Sun, Oct 25, 2015 at 4:50 PM, Matthias Klose wrote: > On 25.10.2015 18:40, H.J. Lu wrote: >> >> On Sun, Oct 25, 2015 at 10:37 AM, Matthias Klose wrote: >>> >>> On 15.10.2015 17:57, Cary Coutant wrote: >>>>> >>>>> >>>

Updated x86-64 psABI

2015-11-18 Thread H.J. Lu
contains updated MPX spec. -- H.J.

Re: Updated x86-64 psABI

2015-11-19 Thread H.J. Lu
On Wed, Nov 18, 2015 at 1:47 PM, H.J. Lu wrote: > Hi, > > The x86-64 psABI has been updated to revision 248. Main changes are > > 1. Support Intel MPX. > 2. Add a chapter for linker optimization. > 3. Add 2 new relocations, R_X86_64_GOTPCRELX and R_X86_64_REX_GOTPCRELX.

[middle-end] How to handle fake register in DECL_INCOMING_RTL?

2015-11-21 Thread H.J. Lu
stack. We are asking middle-end maintainers, is this a correct solution? If not, what other approaches should we try? -- H.J.

RFC: Intel386 psABI version 1.1 draft

2015-11-24 Thread H.J. Lu
relocations. Any comments and feedbacks? Thanks. -- H.J.

Re: RFC: Intel386 psABI version 1.1 draft

2015-12-07 Thread H.J. Lu
On Tue, Nov 24, 2015 at 8:16 AM, H.J. Lu wrote: > Hi, > > Here is the Intel386 psABI version 1.1 draft: > > https://github.com/hjl-tools/x86-psABI/wiki/intel386-psABI-20151120.pdf > > Main changes are > > 1. Add AVX-512 support. > 2. Add linker optimization to com

Re: x86 interrupt attribute

2016-01-18 Thread H.J. Lu
s queued for GCC 7. -- H.J.

Re: x86 interrupt attribute

2016-01-18 Thread H.J. Lu
anch about once a week. > On Mon, Jan 18, 2016 at 9:47 AM H.J. Lu wrote: >> >> On Mon, Jan 18, 2016 at 9:39 AM, Wink Saville wrote: >> > What is the status of the x86 interrupt attribute patch? >> > >> > One of the last references I see is here and an at

RFA: Add GCC Runtime Library Exception to include/plugin-api.h

2016-01-22 Thread H.J. Lu
include/plugin-api.h defines an ABI between linker and compiler, which can be used to implement linker plug-in by any compilers. I'd like to add GCC Runtime Library Exception to include/plugin-api.h so that the linker plug-in can have non-GPL licenses. Thanks. -- H.J.

Re: Compiling with -m64 using attribute interrupt emits IRET not IRETQ

2016-01-28 Thread H.J. Lu
Below is my trivial do nothing main.c which I > compile with and then use objdump to view the assembler source. > > I compiled x86_64-unknown-elf- using crosstool-ng, could that be a > problem? I fixed it on hjl/interrupt/gcc-5-branch branch. I will fix it for hjl/interrupt/stage1 soon. Thanks. -- H.J.

Re: Compiling with -m64 using attribute interrupt emits IRET not IRETQ

2016-01-28 Thread H.J. Lu
On Thu, Jan 28, 2016 at 10:26 AM, H.J. Lu wrote: > On Thu, Jan 28, 2016 at 9:06 AM, Wink Saville wrote: >> I using hjl/interrupt/gcc-5-branch and my program is crashing when I >> issue an INT xx. The problem appears to me to be that using >> __attribute__ ((interrupt)) ca

Re: Compiling with -m64 using attribute interrupt emits IRET not IRETQ

2016-01-28 Thread H.J. Lu
9\]*,\[\\t \]*%\[re\]?sp" } } */ /* { dg-final { scan-assembler "iret" { target ia32 } } } */ /* { dg-final { scan-assembler "iretq" { target { ! ia32 } } } } */ ^^^ The testcase scans for iretq if target isn't 32-bit. -- H.J.

Re: RFA: Add GCC Runtime Library Exception to include/plugin-api.h

2016-02-02 Thread H.J. Lu
o that the linker plug-in can have non-GPL licenses. > > This is OK with me. > > -cary Here is a patch. OK for trunk? Thanks. -- H.J. From 3f8f62505774116d5de233ca36f60e3f8a840516 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 2 Feb 2016 14:02:03 -0800 Subject: [PATCH

Re: RFA: Add GCC Runtime Library Exception to include/plugin-api.h

2016-02-02 Thread H.J. Lu
On Tue, Feb 2, 2016 at 4:23 PM, David Edelsohn wrote: > On Tue, Feb 2, 2016 at 5:03 PM, H.J. Lu wrote: >> On Tue, Feb 2, 2016 at 1:35 PM, Cary Coutant wrote: >>>> include/plugin-api.h defines an ABI between linker and compiler, >>>> which can be used to implemen

RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-07 Thread H.J. Lu
d a. A collection without member. Or b. A collection with only empty collections. 4. No memory slot nor register should be used to pass or return an object of empty collection. The proposed Intel386, x86-64 and IA MCU psABIs are at https://github.com/hjl-tools/x86-psABI/wiki/X86-psABI Any comments? Thanks. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-07 Thread H.J. Lu
ry as well, which is probably not what we > want. I believe that POD for the purpose of layout doesn't change between C++ standards. > How do existing C++ compilers implement empty array members (an > extension)? Does the type of such members affect whether a class is a > standard-layout class? > > Florian Are they "POD for the purpose of layout"? If yes, they are covered here. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-07 Thread H.J. Lu
On Sun, Feb 7, 2016 at 11:36 AM, H.J. Lu wrote: > On Sun, Feb 7, 2016 at 11:31 AM, Florian Weimer wrote: >> * H. J. Lu: >> >>> I am proposing to update Intel386, x86-64 and IA MCU psABIs to specify >>> how to pass/return empty struct: >>> >>> 1

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-07 Thread H.J. Lu
; The C++ standard does not define this. GCC has * Nonzero means that this class type is not POD for the purpose of layout (as defined in the ABI). This is different from the language's POD. */ #define CLASSTYPE_NON_LAYOUT_POD_P(NODE) \ We can use this definition for ia32, x86-64 and IA MCU psABIs. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-07 Thread H.J. Lu
his class type is not POD for the purpose of layout >>(as defined in the ABI). This is different from the language's POD. */ >> #define CLASSTYPE_NON_LAYOUT_POD_P(NODE) \ >> >> We can use this definition for ia32, x86-64 and IA MCU psABIs. > > It still has to be spelled out in non-GCC terms, IMHO. Sure. Do you care to propose a wording for "POD for the purpose of layout"? -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Sun, Feb 7, 2016 at 12:52 PM, H.J. Lu wrote: > On Sun, Feb 7, 2016 at 12:48 PM, Florian Weimer wrote: >> * H. J. Lu: >> >>>> I tested GCC 5.3.1 and Clang 3.5.0. >>>> >>>> GCC Clang >>>> s0 non-emptynon-empty &g

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 7:02 AM, Jonathan Wakely wrote: > On 8 February 2016 at 13:54, H.J. Lu wrote: >> On Sun, Feb 7, 2016 at 12:52 PM, H.J. Lu wrote: >> >> The standard-layout POD is well defined: >> >> https://en.wikipedia.org/wiki/C%2B%2B11#Modification_to

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 7:59 AM, Jonathan Wakely wrote: > On 8 February 2016 at 15:42, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 7:02 AM, Jonathan Wakely >> wrote: >>> On 8 February 2016 at 13:54, H.J. Lu wrote: >>>> On Sun, Feb 7, 2016 at 12:52 PM, H.J. Lu

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 8:15 AM, Jonathan Wakely wrote: > On 8 February 2016 at 16:05, H.J. Lu wrote: >> My understanding is >> >> A type that is standard-layout means that it orders and packs its >> members in a way that is compatible with C. >> >> What is

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
t this class type is a non-standard-layout class. */ #define CLASSTYPE_NON_STD_LAYOUT They aren't the same. struct A { }; struct B { }; struct C : A, B { }; C is a standard-layout type, but not a standard-layout POD type. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 10:30 AM, Jonathan Wakely wrote: > On 8 February 2016 at 18:26, Jonathan Wakely wrote: >> On 8 February 2016 at 17:58, H.J. Lu wrote: >>> On Mon, Feb 8, 2016 at 7:59 AM, Jonathan Wakely >>> wrote: >>>>>> A type is a stand

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 10:46 AM, Jonathan Wakely wrote: > On 8 February 2016 at 18:31, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 10:30 AM, Jonathan Wakely >> wrote: >>> On 8 February 2016 at 18:26, Jonathan Wakely wrote: >>>> On 8 February 2016 at 17:58

Linux-abi group

2016-02-08 Thread H.J. Lu
extensions soon. -- H.J.

Re: Linux-abi group

2016-02-08 Thread H.J. Lu
//gcc.gnu.org/ml/gcc/2016-02/msg00057.html I was referring to program properties: https://groups.google.com/forum/#!topic/generic-abi/fyIXttIsYc8 -- H.J.

Re: Linux-abi group

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 11:33 AM, Szabolcs Nagy wrote: > * H.J. Lu [2016-02-08 11:24:53 -0800]: >> I created a mailing list to discuss Linux specific,.processor independent >> modification and extension of generic System V Application Binary Interface: >> >> https:

Re: Linux-abi group

2016-02-08 Thread H.J. Lu
ooks more like an ELF topic to me, not really ABI. > > Please discuss this on a GNU project list because it affects the > entire GNU project. > gABI is ELF and affects all users, including GNU project, of gABI. Linux-abi discusses Linux-specific extensions to gABI. It is for tools like compilers, assembler, linker and run-time. It isn't appropriate for any GNU project list. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
of layout and a. A class type without member. Or b. A class type with only members of empty class types. 4. No memory slot nor register should be used to pass or return an object of empty record. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 12:38 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 12:05 PM, H.J. Lu wrote: >> >> On Mon, Feb 8, 2016 at 11:33 AM, Jonathan Wakely >> wrote: >> > On 8 February 2016 at 19:23, Richard Smith wrote: >> >> "POD for the purpo

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 2:35 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 1:40 PM, H.J. Lu wrote: >> >> On Mon, Feb 8, 2016 at 12:38 PM, Richard Smith wrote: >> > On Mon, Feb 8, 2016 at 12:05 PM, H.J. Lu wrote: >> >> >> >> On Mon, Feb 8

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
GCC isn't compatible with clang. My proposal will make GCC and clang compatible. It also makes GCC and clang behave the same on both ia32 and x86-64. -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 2:51 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 2:46 PM, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 2:35 PM, Richard Smith wrote: >>> On Mon, Feb 8, 2016 at 1:40 PM, H.J. Lu wrote: >>>> >>>> On Mon, Feb 8, 2016 at 12:38 PM,

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 2:58 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 2:54 PM, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 2:51 PM, Richard Smith wrote: >>> On Mon, Feb 8, 2016 at 2:46 PM, H.J. Lu wrote: >>>> On Mon, Feb 8, 2016 at 2:35 PM, Richard Smith &

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 2:55 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 2:49 PM, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 2:42 PM, Richard Smith wrote: >>> Do we really need an 'empty type' special case? >>> >>> The x86_64 psABI already seems

Re: Linux-abi group

2016-02-08 Thread H.J. Lu
On Mon, Feb 8, 2016 at 3:08 PM, Joseph Myers wrote: > On Mon, 8 Feb 2016, H.J. Lu wrote: > >> >> I was referring to program properties: >> >> >> >> https://groups.google.com/forum/#!topic/generic-abi/fyIXttIsYc8 >> > >> > This looks mo

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-09 Thread H.J. Lu
On Mon, Feb 8, 2016 at 3:28 PM, Richard Smith wrote: > On Mon, Feb 8, 2016 at 3:01 PM, H.J. Lu wrote: >> On Mon, Feb 8, 2016 at 2:58 PM, Richard Smith wrote: >>> On Mon, Feb 8, 2016 at 2:54 PM, H.J. Lu wrote: >>>> On Mon, Feb 8, 2016 at 2:51 PM, Richard Smith &

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-09 Thread H.J. Lu
On Tue, Feb 9, 2016 at 6:45 AM, H.J. Lu wrote: > On Mon, Feb 8, 2016 at 3:28 PM, Richard Smith wrote: >> On Mon, Feb 8, 2016 at 3:01 PM, H.J. Lu wrote: >>> On Mon, Feb 8, 2016 at 2:58 PM, Richard Smith wrote: >>>> On Mon, Feb 8, 2016 at 2:54 PM, H.J. Lu wrote:

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 2:47 AM, Matthijs van Duin wrote: > On 8 February 2016 at 22:40, H.J. Lu wrote: >> "empty type". An empty type is either an array of empty types or a >> class type where every member is of empty type. > > Note that the term "empty type

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 4:40 AM, Matthijs van Duin wrote: > On 11 February 2016 at 11:53, H.J. Lu wrote: >> Since this isn't Plain Old Data (POD) for the purposes of layout, it >> isn't covered by my proposal for psABI. I leave this to C++ ABI. > > You never

Re: Linux-abi group

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 2:26 AM, Suprateeka R Hegde wrote: > H.J, > > I think we are fragmenting with too many standards and mailing lists. This > new discussion group and eventually the resulting standards, all might be > put under LSB http://refspecs.linuxfoundation.org/lsb.shtm

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 5:44 AM, Matthijs van Duin wrote: > On 11 February 2016 at 13:58, H.J. Lu wrote: >> "POD for the purpose of layout" is defined in the Itanium C++ ABI here: >> >> http://mentorembedded.github.io/cxx-abi/abi.html#definitions > > Sorry,

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 6:18 AM, Matthijs van Duin wrote: > On 11 February 2016 at 15:00, H.J. Lu wrote: >> I intentionally exclude C++ specific features in my propose. > > Yet you use a definition from the Itanium C++ ABI which itself depends > on multiple definitions in a par

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
ish to pass without registers > as well? > > Any suggestions on new wording, something like 1. "class type". A class type is a structure, union or C++ class. 2. "empty type". An empty type is a type where it and all of its subobjects are of class or array type. Does it cover struct A { }; struct B { }; struct C : A, B { }; -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 6:54 AM, Michael Matz wrote: > Hi, > > On Thu, 11 Feb 2016, H.J. Lu wrote: > >> Any suggestions on new wording, something like >> >> 1. "class type". A class type is a structure, union or C++ class. >> 2. "empty type

Re: Linux-abi group

2016-02-11 Thread H.J. Lu
On Thu, Feb 11, 2016 at 8:05 AM, Suprateeka R Hegde wrote: > On 11-Feb-2016 07:21 PM, H.J. Lu wrote: >> >> On Thu, Feb 11, 2016 at 2:26 AM, Suprateeka R Hegde >> wrote: >>> >>> H.J, >>> >>> I think we are fragmenting with too many stand

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-12 Thread H.J. Lu
On Fri, Feb 12, 2016 at 6:58 AM, Matthijs van Duin wrote: > On 11 February 2016 at 16:31, H.J. Lu wrote: >> struct A { >> static void foo (void) (); >> static int xxx; >> }; > > What about it? It's an empty struct. (And it declares a function and >

Re: gnu-gabi group

2016-02-15 Thread H.J. Lu
eed a gmail account for any of those. There are quite a few non-gmail users. You don't have to take my word for it. I can add your email to Linux-ABI group and you can check it out yourself :-). -- H.J.

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Fri, Feb 12, 2016 at 11:39 AM, H.J. Lu wrote: > On Fri, Feb 12, 2016 at 6:58 AM, Matthijs van Duin > wrote: >> On 11 February 2016 at 16:31, H.J. Lu wrote: >>> struct A { >>> static void foo (void) (); >>> static int xxx; >>> }; >> >&

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Tue, Feb 16, 2016 at 12:22 PM, Richard Smith wrote: > On Tue, Feb 16, 2016 at 10:24 AM, H.J. Lu wrote: >> >> On Fri, Feb 12, 2016 at 11:39 AM, H.J. Lu wrote: >> > On Fri, Feb 12, 2016 at 6:58 AM, Matthijs van Duin >> > wrote: >> >> On 11 February

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Tue, Feb 16, 2016 at 1:02 PM, Richard Smith wrote: > On Tue, Feb 16, 2016 at 12:25 PM, H.J. Lu wrote: >> On Tue, Feb 16, 2016 at 12:22 PM, Richard Smith >> wrote: >>> On Tue, Feb 16, 2016 at 10:24 AM, H.J. Lu wrote: >>>> >>>> On Fri, Feb 12,

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Tue, Feb 16, 2016 at 1:15 PM, Richard Smith wrote: > On Tue, Feb 16, 2016 at 1:10 PM, H.J. Lu wrote: >> On Tue, Feb 16, 2016 at 1:02 PM, Richard Smith wrote: >>> On Tue, Feb 16, 2016 at 12:25 PM, H.J. Lu wrote: >>>> On Tue, Feb 16, 2016 at 12:22 PM, Richard Sm

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Tue, Feb 16, 2016 at 1:45 PM, Richard Smith wrote: > On Tue, Feb 16, 2016 at 1:21 PM, H.J. Lu wrote: >> On Tue, Feb 16, 2016 at 1:15 PM, Richard Smith wrote: >>> On Tue, Feb 16, 2016 at 1:10 PM, H.J. Lu wrote: >>>> On Tue, Feb 16, 2016 at 1:02 PM, Richard Sm

Re: RFC: Update Intel386, x86-64 and IA MCU psABIs for passing/returning empty struct

2016-02-16 Thread H.J. Lu
On Tue, Feb 16, 2016 at 3:36 PM, Richard Smith wrote: > On Tue, Feb 16, 2016 at 1:48 PM, H.J. Lu wrote: >> On Tue, Feb 16, 2016 at 1:45 PM, Richard Smith wrote: >>> On Tue, Feb 16, 2016 at 1:21 PM, H.J. Lu wrote: >>>> On Tue, Feb 16, 2016 at 1:15 PM, Richard Sm

  1   2   3   4   5   6   7   8   9   10   >