Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!sol.ctr.columbia.edu!ira.uka.de!ifistg!homeis@azu.informatik.uni-stuttgart.de From: homeis@azu.informatik.uni-stuttgart.de (Dieter Homeister) Newsgroups: comp.sys.transputer Subject: Re: 16-bit Integers Message-ID: <4104@ifi.informatik.uni-stuttgart.de> Date: 17 Aug 90 18:10:27 GMT Sender: news@ifistg.uucp Organization: IPVR, Univ. Stuttgart, W-Germany Lines: 28 Originator: homeis@azu Markus Bohn writes: >Has anyone experience or knowledge of transputer C-compilers with >16 Bit Integer Dataformat ??? I had the same Problem. I needed 1024*768 pixel data and I have only 2 MB RAM, so I had to pack 2 16-bit-ints into one 32-bit int. My c-compiler (developped by one of my students, Andreas Kaiser), cannot handle 16-bit-ints on T414 or T800, too. Only for the T212 the compiler can produce code for 16- and 32-bit-ints. The reason is that the transputer does not support the handling of 16-bit-values on 32-bit-transputers, so the produced code is very inefficient, no matter if a compiler or a programmer generates it. For the programmer it might be more comfortable, if the compiler does this job. I tried two solutions: shift and mask, or moving two bytes. To my surprise the shift solution was faster, so I now use this. In my case efficiency of the 16-bit-access is not important, so I didn't try register optimisation or asm parts. -------------- Dieter Homeister, Universitaet Stuttgart, Institut fuer parallele und verteilte Hoechstleistungsrechner (IPVR) 7000 Stuttgart 1, Azenbergstr. 12, Tel 0711-121-1342, W-Germany e-mail homeister@informatik.uni-stuttgart.dbp.de -------------- I'm a little bit tired, so put spelling errors > /dev/null