Deutsch   English   Français   Italiano  
<vkc0tq$194b0$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: bart <bc@freeuk.com>
Newsgroups: comp.lang.c
Subject: Re: transpiling to low level C
Date: Mon, 23 Dec 2024 15:51:24 +0000
Organization: A noiseless patient Spider
Lines: 42
Message-ID: <vkc0tq$194b0$1@dont-email.me>
References: <vjlh19$8j4k$1@dont-email.me>
 <vjn9g5$n0vl$1@raubtier-asyl.eternal-september.org>
 <vjnhsq$oh1f$1@dont-email.me> <vjnq5s$pubt$1@dont-email.me>
 <vjpn29$17jub$1@dont-email.me> <86ikrdg6yq.fsf@linuxsc.com>
 <vk78it$77aa$1@dont-email.me> <vk8a0e$l8sq$1@paganini.bofh.team>
 <vk9q1p$oucu$1@dont-email.me> <20241223002048.00004d3c@yahoo.com>
 <UwfaP.15429$62H.7203@fx36.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 23 Dec 2024 16:51:23 +0100 (CET)
Injection-Info: dont-email.me; posting-host="b4bb3f8d0fd8a8ccc19a9bde5301ebf5";
	logging-data="1347936"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19MHLAOVlnRYzgCEJH4d8HF"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:y25FyQ5gGgpyZ33LkadiCSpQOzw=
In-Reply-To: <UwfaP.15429$62H.7203@fx36.iad>
Content-Language: en-GB
Bytes: 2816

On 23/12/2024 15:41, Scott Lurndal wrote:
> Michael S <already5chosen@yahoo.com> writes:
>> On Sun, 22 Dec 2024 20:41:44 +0100
>> Janis Papanagnou <janis_papanagnou+ng@hotmail.com> wrote:
>>
> 
>>>
>>> Whether you have the test in an 'if', or in a ternary '?:', or
>>> use it through a bool-int coercion as integer index to an indexed
>>> function[-pointer] table; it's a conditional branch based on the
>>> ("Test Set") predicate i<n. You showed in your example how to get
>>> rid of the 'if' symbol, but you could - as expected - not get rid
>>> of the actual test that is the substance of a conditional branch.
>>>
>>> I think that is what is to expect by the theory and the essence of
>>> the point I tried to make.
>>>
>>> Janis
>>>
>>
>>
>> You make no sense. I am starting to suspect that the reason for it
>> is ignorance rather than mere stubbornness.
>>
>> https://godbolt.org/z/EKo5rrYce
>> Show me conditional branch in the right pane.
>>
> 
>   The 'C' in 'CSET' is short for conditional.  Because
> the branch is folded into the compare doesn't mean it
> isn't there.

That's just a mnemomic, which doesn't exist in the x86 version.

Anyway, 'w0' seems to be set either way, and the program counter will 
point to the same instruction in each case too.

So there's no branching at this level of code, unless you consider 
stepping PC to the next instruction to be a jump.

How is it 'folded into' the compare anyway? Are they not two independent 
instructions?