🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by amante@asgard.UU Tue, 28 Feb 1989 23:35
porting G++ v1.32 to a custom vector processor
#2669
Author: amante@asgard.UU
Date: Tue, 28 Feb 1989 23:35
46 lines
2006 bytes

Hi! We are currently porting G++ v1.32 to a specialized 3-dimensional
vector processor here at the CRSM. The machine is optimized for handling
vectors of length 3, and has built in operations to manipulate these
vectors. It has a vector register file whose 3 components can also be
accessed as individual scalar registers. (At this time, we have ported
GNU CC v1.27 to this machine, but it does not use the machine's vector
capabilities.  We are updating this compiler to v1.32.)

We would like to use the class concept of G++ to define a class
embodying a vector with 3 components so that we will be able
to exploit the parallel processing capabilities of the underlying
hardware (i.e. a 3dv, and its associated operators).  We have
been thinking about this problem and were wondering if someone
had done something similar before and could shed some light on it..
Our specific questions are:

(1) How do we inform the compiler of the existence of 3-d vector
    registers in our machine so that it could use this information
    to generate code that exploits the 3d vector processing
    capabilities?

    We feel that by defining a class for 3-dimensional vectors
    we should be able to convey this information to the compiler.
    But we don't know exactly how.

(2) A related question is can we define register classes such that
    the classes intersect one another orthogonally (i.e., a vector
    register is composed of scalar registers and a scalar register
    can be part of a larger vector register)?

(3) Lastly, is there a way in which we could accomplish (1)
    and (2) by only altering the md and tm.h files? If not, how
    extensively would we have to modify the compiler to accomplish
    these objectives?

Any advice or information on these matters is greatly appreciated.

Amante A. Mangaser
Digital Motion Control Group
Center for Robotic Systems in Microelectronics (CRSM)
University of California at Santa Barbara
6740 Cortona Dr.
Goleta, CA 93117
Phone: (805)968-8597
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads