Re: Question: "Zuse's Device"

ramdrive@masslab.snu.ac.kr
3 Apr 1999 21:59:09 -0500

          From comp.compilers

Related articles
Question: "Zuse's Device" glassy@cs.montana.edu (Louis Glassy) (1999-04-01)
Re: Question: "Zuse's Device" ramdrive@masslab.snu.ac.kr (1999-04-03)
Re: Question: "Zuse's Device" daniel.guerrero@upcnet.upc.es (Daniel Guerrero Miralles) (1999-04-10)
| List of all articles for this month |

From: ramdrive@masslab.snu.ac.kr
Newsgroups: comp.compilers
Date: 3 Apr 1999 21:59:09 -0500
Organization: Seoul National University, Republic of Korea
References: 99-04-003
Keywords: architecture, optimize

It is exactly the same idea with "predicated execution" or
"conditional execution". Already many processors (UltraSPARC, R10k,
PPC, etc) have such conditional move instructions.


In UltraSPARC, your example code can be:


cmp %i1,0 ! %i1 = k
add %i0,1,%i2 ! %i0 = a, %i2 = scratch
movg %xcc, %i2, %i0 ! move %i2 to %i0 only when condition satisfied


See 591 page of Muchnick's Advanced Compiler Design & Impl. for
conditional move.


IA-64 and other VLIW processors will support conditional execution for
more general instructions. Many papers are available for predicated
execution and conditional execution.


Seongbae Park


Louis Glassy <glassy@cs.montana.edu> wrote:
> Dear all,
> if k > 0 then
> a = a + 1
> endif
> I've looked in compiler texts, e.g. Fischer & LeBlanc, the Dragon
> Book, Muchnick's Advanced Compiler Design & Impl., but I haven't
> been able to find a name for "Zuse's Device", and was wondering
> if c.c. readers knew this method by some other name, and if so, what..?





Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.