|
Well I can't find any documentation on the Power 7 instruction set - but
there is documentation on the older Power 2 and 4 hardware which (as I
suggested earlier) appear to have + and <> branch options.
Not that it matters but RPGIII generates pretty much the same instructions
for both scenario. We can't look at RPG IV - just a hardware dump of the
instruction stream which I could not interpret and have no desire to learn
to do so since I could do little with that knowledge.
Here's what is generated for the RPG code shown:
CMPBLA(B) *IN01,C'1' /NEQ(.ELF0001) <=== *IN01 IFEQ *ON
CMPBLA(B) *IN01,C'1' /EQ( .ELF0002) <=== *IN01 IFNE *ON
CMPBLA(B) *IN01,C'0' /NEQ(.ELF0003) <=== *IN01 IFEQ *OFF
Note that even though we can see the MI we can't see the machine
instructions (although here are people on this list who could) But this is
what was generated for the S/38, and the AS/400 and the i5, and ... all the
way up to today's Power 7 - which is what I used. Yet each of those had
different hardware so the instruction set (as a minimum between CICS and
RISC and Power) was different.
At the end of the day optimizing at this level is futile because one tiny
little hardware or microcode change and all bets are off.
On 2013-10-04, at 6:58 PM, Glenn Gundermann <ggundermann@xxxxxx> wrote:
Hi Alan,instructions as "if a <> b"?
I appreciate "I think" but I was looking for more of a definitive answer.
Perhaps the "if not" is just a different instruction as "if" by itself.
Is this similar to asking: does "if a = b" take the same number of
rpg400-l@xxxxxxxxxxxx>
Just wondering.
Thanks,
Glenn
-----Original Message-----
From: Alan Campin <alan0307d@xxxxxxxxx>
Sender: rpg400-l-bounces@xxxxxxxxxxxx
Date: Fri, 4 Oct 2013 16:38:02
To: RPG programming on the IBM i (AS/400 and iSeries)<
Reply-To: "RPG programming on the IBM i \(AS/400 and iSeries\)" <rpg400-l@xxxxxxxxxxxx>
Subject: Re: If boolean vs. If not booleanreverse
If you mean machine instructions, the second would generate more to
the value of logical true or false I would think.wrote:
Why would it matter? A couple of nanoseconds.
On Fri, Oct 4, 2013 at 3:25 PM, Glenn Gundermann <ggundermann@xxxxxx>
mailing list
Hi gurus,--
Forgive the trivialness of this question but I am wondering if you smart
folks can answer this.
Compare these two statements:
If booleanVar;
If not booleanVar;
Do both of these take the exact same number of internal instructions for
the test or does the second statement take an extra step?
Thanks.
Glenn Gundermann
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
To post a message email: RPG400-L@xxxxxxxxxxxxmailing list
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
Jon Paris
www.partner400.com
www.SystemiDeveloper.com
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.