May 16, 2002 VectorC | ||||
---|---|---|---|---|
| ||||
Walter, you should definitely check this shit out. ----- Original Message ----- To: <sweng-gamedev@midnightryder.com> Sent: Wednesday, May 15, 2002 3:56 PM Subject: Re: [sweng-gamedev] Using vector assembly/intrinsics cleverly? > VectorC is exactly what you want. > > http://www.codeplay.com/vectorc/feat-vec.html > > ----- Original Message ----- > To: <sweng-gamedev@midnightryder.com> > Sent: Wednesday, May 15, 2002 3:57 PM > Subject: [sweng-gamedev] Using vector assembly/intrinsics cleverly? > > > The question I have is if anyone out there know of a good way of using the 3DNow/SSE instruction set / intrinsics in a platform > independent kind of way? That is, I want one exe for both (or all three, if we count the ones without either) and INLINE vector / > matrix class members. It's important that the vector members are inlined because otherwise the compiler cant optimise egister > allocation over the calls. As in: > > Vect a,b; <- some cool values > a *= 12.0f; > b += a; > b /= 13.0f; > > Here we want the compiler to leave a & b in registers the whole time, which is not possible if the operators are not inlined. > > Solutions that have occured to me is: > 1) Build different exe's append together and use a launcher. (somehow) > 2) Only use SSE/3DNow in larger modules and use function pointers / switches. > 3) Dont use them at all. > > any suggestions welcome! > > cheers |
May 16, 2002 Re: VectorC | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean L. Palmer | Thanks, I did. I think it clearly shows C's weaknesses in being able to handle vector operations. "Sean L. Palmer" <spalmer@iname.com> wrote in message news:abvjn7$1eck$1@digitaldaemon.com... > Walter, you should definitely check this shit out. > > ----- Original Message ----- > To: <sweng-gamedev@midnightryder.com> > Sent: Wednesday, May 15, 2002 3:56 PM > Subject: Re: [sweng-gamedev] Using vector assembly/intrinsics cleverly? > > > > VectorC is exactly what you want. > > > > http://www.codeplay.com/vectorc/feat-vec.html > > > > ----- Original Message ----- > > To: <sweng-gamedev@midnightryder.com> > > Sent: Wednesday, May 15, 2002 3:57 PM > > Subject: [sweng-gamedev] Using vector assembly/intrinsics cleverly? > > > > > > The question I have is if anyone out there know of a good way of using the > 3DNow/SSE instruction set / intrinsics in a platform > > independent kind of way? That is, I want one exe for both (or all three, > if we count the ones without either) and INLINE vector / > > matrix class members. It's important that the vector members are inlined > because otherwise the compiler cant optimise egister > > allocation over the calls. As in: > > > > Vect a,b; <- some cool values > > a *= 12.0f; > > b += a; > > b /= 13.0f; > > > > Here we want the compiler to leave a & b in registers the whole time, > which is not possible if the operators are not inlined. > > > > Solutions that have occured to me is: > > 1) Build different exe's append together and use a launcher. (somehow) > > 2) Only use SSE/3DNow in larger modules and use function pointers / > switches. > > 3) Dont use them at all. > > > > any suggestions welcome! > > > > cheers > > > |
Copyright © 1999-2021 by the D Language Foundation