I can't really look at the code at the moment, but from the  
description it should be fine.

Gabe

Quoting Ali Saidi <[email protected]>:

> Great... Gabe, are you satisfied?
>
> Ali
>
> On Dec 14, 2009, at 9:00 AM, soumyaroop roy wrote:
>
>> Hi Gabe, Ali,
>>
>> Updated patch(es) are here:
>> http://www.csee.usf.edu/~sroy/techres/m5res/m5_alpha_cix_mvi.tar.bz2
>>
>> I folded earlier patches 'alpha_mvi.patch' and
>> 'alpha_cix_ctpop.patch' into a
>> single patch 'alpha_mvi_cix.patch'. Then, I incorporated Gabe's
>> comments as a new patch 'alpha_mvi_cix_1.patch' (easier for you to
>> spot the differences):
>> a. inserted blank spaces around operators (e.g., 'a<b' is now 'a < b')
>> b. removed explicit 'IntAluOp' from the descriptions of min/max
>>   instructions because the use of integer register Ra already
>>   takes care of that. I verified that the generated decoder.cc.
>> c. removed 'temp' variable from 'ctpop'
>>
>> Also verified that the changes did not break anything!
>>
>> I am happy to be able to contribute. And, Soumyaroop Roy
>> <[email protected]> is indeed ok for the commit log.
>>
>> regards,
>> Soumyaroop.
>>
>> On 12/13/09, Gabe Black <[email protected]> wrote:
>>> There are a few minor things I notice. First, you should have spaces
>>> around your operators, ie. "a<b" should be "a < b". Second, I don't
>>> think you need to explicitly set IntAluOp in places you're using an
>>> integer register like Ra. Steve wouldn't know for sure. Third, in
>>> ctpop,
>>> you don't need to put Rb into a temporary variable. You might need
>>> to do
>>> that if you were, for instance, looking at the value of a destination
>>> operand to see what flags to set since that would confuse the parser
>>> into thinking it was a source as well. That's not happening here,
>>> so it
>>> makes the code slightly longer unnecessarily.
>>>
>>> Outside of those fairly picky complaints, assuming it functions
>>> correctly, it looks good to me. Thanks for your contribution!
>>>
>>>
>>> Gabe
>>>
>>>
>>> Ali Saidi wrote:
>>>> Hi Soumyaroop,
>>>>
>>>> Thanks for the patches. They look good to me, if no one else has any
>>>> comments I'll commit them. Is Soumyaroop Roy <[email protected]> ok
>>>> for
>>>> the commit log?
>>>>
>>>> Thanks,
>>>> Ali
>>>>
>>>> On Dec 10, 2009, at 7:02 PM, soumyaroop roy wrote:
>>>>
>>>>
>>>>> Hello Ali,
>>>>>
>>>>> The implementation of the MVI instructions (13 of them) and ctpop
>>>>> and
>>>>> a bugfix for cttz for ALPHA along with sanity testcases is
>>>>> available
>>>>> here:
>>>>> http://www.csee.usf.edu/~sroy/techres/m5res/
>>>>> m5_alpha_cix_mvi.tar.bz2
>>>>>
>>>>> The "gsm" benchmark from Mediabench-I generates the "maxsw4"
>>>>> instructions unless compiled with something like a -mcpu=ev56
>>>>> option.
>>>>>
>>>>> -Soumyaroop
>>>>>
>>>>> On Thu, Oct 29, 2009 at 4:27 PM, Ali Saidi <[email protected]> wrote:
>>>>>
>>>>>> I'm in no rush...
>>>>>>
>>>>>> Here are some references:
>>>>>> http://www.alphalinux.org/docs/MVI-full.html
>>>>>> http://www.alphalinux.org/wiki/index.php/Motion_Video_Instructions
>>>>>>
>>>>>> libmpeg2 has inverse discrete cosine transform code that makes use
>>>>>> of the
>>>>>> MVI instructions. You should be able to extract an inner loop from
>>>>>> one
>>>>>> there and compare the output of an x86 and the alpha code executed
>>>>>> by M5.
>>>>>>
>>>>>> As far as CTPOP writing a testcase is pretty trivial. The
>>>>>> instruction just
>>>>>> counts the number of bits set in a 64 bit register.See
>>>>>> http://en.wikipedia.org/wiki/Hamming_weight for an idea of how to
>>>>>> do this
>>>>>> quickly without native popcount support.
>>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>> Ali
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, 29 Oct 2009 16:42:29 -0400, soumyaroop roy <[email protected]
>>>>>> >
>>>>>> wrote:
>>>>>>
>>>>>>> [I am replying to m5-dev instead of m5-users]
>>>>>>>
>>>>>>> Hello Ali,
>>>>>>>
>>>>>>> Which benchmarks should one use to test the implementation of
>>>>>>> these
>>>>>>> instructions?
>>>>>>>
>>>>>>> Either I or Vidya Sangkar, a labmate of mine, can work on it.
>>>>>>> But it
>>>>>>> has to be after Nov 17th. Is that timeline is ok?
>>>>>>>
>>>>>>> regards,
>>>>>>> Soumyaroop
>>>>>>>
>>>>>>> On 10/29/09, Ali Saidi <[email protected]> wrote:
>>>>>>>
>>>>>>>> ctlz and cttz are available and unless you're doing something
>>>>>>>> crazy I
>>>>>>>> don't
>>>>>>>> think ctpop would be emitted. MVI isn't an instruction but a
>>>>>>>> class of
>>>>>>>> instructions. See
>>>>>>>>
>>>>>>>>
>>>>>> http://en.wikipedia.org/wiki/DEC_Alpha#Motion_Video_Instructions_.28MVI.29
>>>>>>
>>>>>>>> At this point we've probably spent as much time discussing them
>>>>>>>> as it
>>>>>>>> would
>>>>>>>> have taken to implement them.
>>>>>>>>
>>>>>>>> Ali
>>>>>>>>
>>>>>>>> On Thu, 29 Oct 2009 15:55:34 -0400, soumyaroop roy <[email protected]
>>>>>>>>
>>>>>>>> wrote:
>>>>>>>>> One has to supply the flag, "-mno-cix", during compilation to
>>>>>>>> make
>>>>>>>>> sure that the CIX instructions ("ctlz", "cttz", and "ctpop")
>>>>>>>> are not
>>>>>>>>> emitted in the code.
>>>>>>>>>
>>>>>>>>> Here is the list of default flags passed (excerpt from
>>>>>>>>> "alphaev67-unknown-linux-gnu -v -Q  dummy.c"):
>>>>>>>>>
>>>>>>>>> options passed:  -v dummy.c -mcpu=ev67 -mtune=ev67
>>>>>>>>> options enabled:  -falign-loops -fargument-alias -fauto-inc-dec
>>>>>>>>> -fbranch-count-reg -fcommon -fearly-inlining
>>>>>>>>> -feliminate-unused-debug-types -ffunction-cse -fgcse-lm -fident
>>>>>>>>> -fivopts
>>>>>>>>> -fkeep-static-consts -fleading-underscore -fmath-errno
>>>>>>>>> -fmerge-debug-strings -fmove-loop-invariants -fpcc-struct-
>>>>>>>> return
>>>>>>>>> -fpeephole -fsched-interblock -fsched-spec -fsched-stalled-
>>>>>>>> insns-dep
>>>>>>>>> -fsigned-zeros -fsplit-ivs-in-unroller -ftoplevel-reorder
>>>>>>>> -ftrapping-math
>>>>>>>>> -ftree-cselim -ftree-loop-im -ftree-loop-ivcanon
>>>>>>>>
>>>>>> -ftree-loop-optimize
>>>>>>
>>>>>>>>> -ftree-parallelize-loops= -ftree-reassoc -ftree-scev-cprop
>>>>>>>>> -ftree-vect-loop-version -fvar-tracking -fzero-initialized-in-
>>>>>>>> bss
>>>>>>>>> -mbwx
>>>>>>>>> -mcix -mexplicit-relocs -mfix -mfloat-ieee -mfp-regs -mglibc
>>>>>>>> -mlarge-data
>>>>>>>>> -mlarge-text -mlong-double-128 -mmax
>>>>>>>>>
>>>>>>>>> Note the "-mcix" on the second last line above.
>>>>>>>>>
>>>>>>>>> I could not find anything about the MVI instruction.
>>>>>>>>>
>>>>>>>>> regards,
>>>>>>>>> Soumyaroop
>>>>>>>>>
>>>>>>>>> On 10/29/09, Ali Saidi <[email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>> I've put a link on the d/l page. The file is downloading to
>>>>>>>>>> m5sim.org
>>>>>>>>>> right
>>>>>>>>>> now and should be available within 5 minutes.
>>>>>>>>>>
>>>>>>>>>> Ali
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, 28 Oct 2009 22:27:11 -0400, soumyaroop roy
>>>>>>>>>> <[email protected]>
>>>>>>>>>>
>>>>>>>>>> wrote:
>>>>>>>>>>> Nate,
>>>>>>>>>>>
>>>>>>>>>>> It is available for download here (33 MB):
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>> http://72.187.222.34/~sroy/m5_tests/alphaev67-unknown-linux-gnu-x86-32.tar.bz2
>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -Soumyaroop
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Oct 28, 2009 at 9:12 PM, soumyaroop roy
>>>>>>>>
>>>>>> <[email protected]>
>>>>>>
>>>>>>>>>>> wrote:
>>>>>>>>>>>> On Wed, Oct 28, 2009 at 9:04 PM, nathan binkert
>>>>>>>>>>>> <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> My estimate is that the tar-zipped file should between
>>>>>>>>>>>>>>>> 250-300
>>>>>>>>>>>>>>>> MB.
>>>>>>>>>>>>>>> No problem.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Let me host it somewhere and send you the link so that
>>>>>>>> you may
>>>>>>>>>> download
>>>>>>>>>>>>>> it.
>>>>>>>>>>>>> Sure.  Once I get it on the m5 site, you can add the link.
>>>>>>>>>>>>
>>>>>>>>>>>> Is there a way for me to upload it on the M5 wiki
>>>>>>>> directly? Is
>>>>>>>>>>>> that
>>>>>>>>>>>> what you were implying all along that I should do?
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Do you mean providing the link though the wiki? I do
>>>>>>>> not have
>>>>>>>>>>>>>> permissions to edit this page,
>>>>>>>>>>>>>> http://www.m5sim.org/wiki/index.php/Download, which has
>>>>>>>> links
>>>>>>>>>>>>>> to
>>>>>>>>>>>>>> the
>>>>>>>>>>>>>> cross-compilers.
>>>>>>>>>>>>>
>>>>>>>>>>>>> You should be able to, but you have to create an account.
>>>>>>>>>>>>
>>>>>>>>>>>> I already have an account. But it says:
>>>>>>>>>>>>
>>>>>>>>>>>> You do not have permission to edit this page, for the
>>>>>>>> following
>>>>>>>>>>>> reason:
>>>>>>>>>>>> This page has been locked to prevent editing.
>>>>>>>>>>>>
>>>>>>>>>>>> You can view and copy the source of this page:
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Nate
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> m5-users mailing list
>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> -Soumyaroop
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Soumyaroop Roy
>>>>>>>>>>>> Ph.D. Candidate
>>>>>>>>>>>> Department of Computer Science and Engineering
>>>>>>>>>>>> University of South Florida, Tampa
>>>>>>>>>>>> http://www.csee.usf.edu/~sroy
>>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> m5-users mailing list
>>>>>>>>>> [email protected]
>>>>>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>>>>>
>>>>>>>>
>>>>>
>>>>> --
>>>>> Soumyaroop Roy
>>>>> Ph.D. Candidate
>>>>> Department of Computer Science and Engineering
>>>>> University of South Florida, Tampa
>>>>> http://www.csee.usf.edu/~sroy
>>>>> _______________________________________________
>>>>> m5-dev mailing list
>>>>> [email protected]
>>>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>>>
>>>>
>>>> _______________________________________________
>>>> m5-dev mailing list
>>>> [email protected]
>>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>>
>>>
>>> _______________________________________________
>>> m5-dev mailing list
>>> [email protected]
>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>
>>
>>
>> --
>> Soumyaroop Roy
>> Ph.D. Candidate
>> Department of Computer Science and Engineering
>> University of South Florida, Tampa
>> http://www.csee.usf.edu/~sroy
>> _______________________________________________
>> m5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/m5-dev
>>
>
> _______________________________________________
> m5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/m5-dev
>


_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to