Re: git: 9d87c1aac4a8 - main - libc: Add missing kill_dependency macro
- In reply to: Konstantin Belousov : "Re: git: 9d87c1aac4a8 - main - libc: Add missing kill_dependency macro"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 21 Jun 2026 21:48:12 UTC
On Sun, 21 Jun 2026 13:13:50 +0300 Konstantin Belousov wrote: > On Sat, Jun 20, 2026 at 11:50:50PM +0330, Faraz Vahedi wrote: >> Hey, >> >> I see. I dug further into related proposals and the reasons why no >> compiler today has implemented true data dependency tracking >> and that they all basically map and promote consume to acquire. >> The kill_dependency is also basically a no-op, and both compilers >> optimise them identically. I did a few tests on my AArch64 box and >> that's how I'm convinced, so I believe keeping the current form >> could be ideal as it fully conforms to the standard and we're assured >> that at least any conforming compiler would support it just fine and >> there's no extension or non-standard tweak in it. On the other hand, >> although adding a separate branch with the GCC style is possible, I >> don't think that'd add any value but visual complications. >> >> Either way, whether dependency tracking changes drastically or this >> very approach becomes obsolete, keeping our header as-is seems >> safe for now. > I am fine with it then. My concern was in subtle breakage of the > code compiled with gcc. I think the GCC definition just enforces that Y and kill_dependency(Y) are expressions so things like the following produce an error. if kill_dependency(foo);