Author Topic: JWasm212pre with AVX2  (Read 14858 times)

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
JWasm212pre with AVX2
« on: November 18, 2014, 07:21:42 AM »
Here are 64bit and 32bit binaries with AVX2
please test it 
remember that this is my version with all improvements and fixing
so to access it you should use this for 64 bit:
Code: [Select]
option casemap : none
option win64 : 11
option frame : auto
option stackbase : rsp
.xmm
remember, to be able to run AVX2 you need haswell processor at least
« Last Edit: March 05, 2015, 05:42:31 AM by habran »
Cod-Father

jj2007

  • Member
  • *****
  • Posts: 7761
  • Assembler is fun ;-)
    • MasmBasic
Re: JWasm212pre with AVX2
« Reply #1 on: November 18, 2014, 03:11:17 PM »
Here are 64bit and 32bit binaries with AVX2
please test it

WinMain proc uses edi esi ebx hInst:DWORD, hPrevInst:DWORD, CmdLine:DWORD, CmdShow:DWORD
LOCAL wc:WNDCLASSEXW, msg:MSG, NotRef
      ClearLocals
      int 3
      lea esi, wc
      mov wc.cbSize, sizeof WNDCLASSEXW
      mov wc.style, CS_HREDRAW or CS_VREDRAW or CS_BYTEALIGNWINDOW


Habran
WinMain    Ú$ À55             push ebp                                   ; INT ReTestH.WinMain(hCurrInstance,hPrevInstance,CmdLine,ShowState)
0040187F   ³.  8BEC           mov ebp, esp
00401881   ³.  83EC 50        sub esp, 50
00401884   ³.  57             push edi
00401885   ³.  56             push esi
00401886   ³.  53             push ebx
00401887   ³.  E8 E43C0100    call ClearLocalsP
0040188C   ³.  C705 54EC4100  mov dword ptr [41EC54], 64
00401896   ³.  CC             int3
00401897   ³?  8D75 00        lea esi, [ebp]
0040189A   ³?  C745 00 300000 mov dword ptr [ebp], 30
004018A1   ³?  C745 04 032000 mov dword ptr [ebp+4], 2003

Japheth
WinMain    Ú$ À55             push ebp                                   ; INT ReTest.WinMain(hCurrInstance,hPrevInstance,CmdLine,ShowState)
0040187F   ³.  8BEC           mov ebp, esp
00401881   ³.  83EC 50        sub esp, 50
00401884   ³.  57             push edi
00401885   ³.  56             push esi
00401886   ³.  53             push ebx
00401887   ³.  E8 843E0100    call ClearLocalsP
0040188C   ³.  C705 54EC4100  mov dword ptr [41EC54], 64
00401896   ³.  CC             int3
00401897   ³?  8D75 D0        lea esi, [ebp-30]
0040189A   ³?  C745 D0 300000 mov dword ptr [ebp-30], 30
004018A1   ³?  C745 D4 032000 mov dword ptr [ebp-2C], 2003

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #2 on: November 18, 2014, 06:04:34 PM »
Thaks jj2007 :t
I was always concentrated on 64 bit so I missed to see that mistake
I'll fix it as soon as possible
If it requires more time I'll implement AVX2 in original JWasm for 32 bit
thanks again :biggrin:

PS: I removed 32 bit until I fix it
     64 bit is OK
Cod-Father

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #3 on: November 18, 2014, 07:36:16 PM »
I have uploaded at the top new version of 32 bit with AVX2 built in
that is built from original code with no additions except AVX2
please test it and let me know if OK
Cod-Father

jj2007

  • Member
  • *****
  • Posts: 7761
  • Assembler is fun ;-)
    • MasmBasic
Re: JWasm212pre with AVX2
« Reply #4 on: November 18, 2014, 07:48:19 PM »
I have uploaded at the top new version of 32 bit with AVX2 built in

This one chokes complaining it can't find msvcr120.dll :(
Note that JWasm of 19 Feb 2014 is happy with the old linker and mspdb50.dll (June 1998). And I guess many people are not eager to install the latest behemoth of the Visual S*** saga just to be able to test a tool...

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #5 on: November 18, 2014, 08:05:36 PM »
Never happy ;)
Here is 32 bit version built with VC2005
Test this one

PS: I added 64 bit built with VC2005
and it is also original source without other additions except AVX2
« Last Edit: November 18, 2014, 11:24:38 PM by habran »
Cod-Father

jj2007

  • Member
  • *****
  • Posts: 7761
  • Assembler is fun ;-)
    • MasmBasic
Re: JWasm212pre with AVX2
« Reply #6 on: November 18, 2014, 10:21:11 PM »
Google for activation generation context failed to see what happens with the latest version. Did you post the release version? Most frequent cause of this problem is that the debug version will run only on machines that have the same configuration (=the same dll hell) as the coder.

Code: [Select]
=================
Inizio generazione contesto di attivazione.
Parametro di input:
Flags = 0
ProcessorArchitecture = Wow32
CultureFallBacks = it-IT;it
ManifestPath = J:\Masm32\bin\JWasm.exe
AssemblyDirectory = J:\Masm32\bin\
Application Config File =
-----------------
INFORMAZIONI: analisi del file manifesto J:\Masm32\bin\JWasm.exe in corso.
INFORMAZIONI: l'identità di definizione del manifesto è (null).
INFORMAZIONI: riferimento: Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195"
INFORMAZIONI: risoluzione del riferimento Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" in corso.
INFORMAZIONI: risoluzione del riferimento per ProcessorArchitecture WOW64 in corso.
INFORMAZIONI: risoluzione del riferimento per la lingua Neutral in corso.
INFORMAZIONI: applicazione dei criteri di binding in corso.
INFORMAZIONI: criteri di autore non trovati.
INFORMAZIONI: reindirizzamento criteri di binding non trovato.
INFORMAZIONI: inizio dell'esecuzione del probe dell'assembly.
INFORMAZIONI: assembly non trovato in WinSxS.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in C:\Windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
INFORMAZIONI: manifesto non trovato per la lingua Neutral.
INFORMAZIONI: fine dell'esecuzione del probe dell'assembly.
INFORMAZIONI: risoluzione del riferimento per ProcessorArchitecture x86 in corso.
INFORMAZIONI: risoluzione del riferimento per la lingua Neutral in corso.
INFORMAZIONI: applicazione dei criteri di binding in corso.
INFORMAZIONI: ricerca dei criteri di autore in C:\Windows\WinSxS\manifests\x86_policy.8.0.microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4940_none_516d712b0f495a45.manifest
INFORMAZIONI: reindirizzamento criteri di binding non trovato.
INFORMAZIONI: inizio dell'esecuzione del probe dell'assembly.
INFORMAZIONI: assembly non trovato in WinSxS.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in C:\Windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in J:\Masm32\bin\Microsoft.VC80.CRT.DLL.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in J:\Masm32\bin\Microsoft.VC80.CRT.MANIFEST.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in J:\Masm32\bin\Microsoft.VC80.CRT\Microsoft.VC80.CRT.DLL.
INFORMAZIONI: tentativo di esecuzione del probe del manifesto in J:\Masm32\bin\Microsoft.VC80.CRT\Microsoft.VC80.CRT.MANIFEST.
INFORMAZIONI: manifesto non trovato per la lingua Neutral.
INFORMAZIONI: fine dell'esecuzione del probe dell'assembly.
INFORMAZIONI: impossibile risolvere il riferimento Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195".
ERRORE: generazione del contesto di attivazione non riuscita.
Fine generazione contesto di attivazione.

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #7 on: November 18, 2014, 10:48:17 PM »
reloaded at the same spot  ::)
Cod-Father

jj2007

  • Member
  • *****
  • Posts: 7761
  • Assembler is fun ;-)
    • MasmBasic
Re: JWasm212pre with AVX2
« Reply #8 on: November 19, 2014, 03:41:59 AM »
reloaded at the same spot  ::)

reply #5? Works like a charm :t

Ficko

  • Regular Member
  • *
  • Posts: 38
Re: JWasm212pre with AVX2
« Reply #9 on: November 19, 2014, 06:26:40 AM »
Hi Habran!

I really appreciate your work, doing great job being a fan of JWASM myself too. :t

Any reason you don’t fork it or put it on a GIT somewhere?
It took me quite a time figuring out what you up to by crawling through the numerous versions you have published on the forum.

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #10 on: November 19, 2014, 06:53:21 AM »
reloaded at the same spot  ::)

reply #5? Works like a charm :t
Thanks jj2007, glad to make YOU happy :lol:
Hi Habran!

I really appreciate your work, doing great job being a fan of JWASM myself too. :t

Any reason you don’t fork it or put it on a GIT somewhere?
It took me quite a time figuring out what you up to by crawling through the numerous versions you have published on the forum.

Thanks Ficko,  I am planing to do that as soon as I finish testing and fixing my version of 32 bit
I am also planing to implement RIP instruction
I am also planing to translate it to 64 bit assembly language
However, I have no idea about GIT and how it works


Cod-Father

Ficko

  • Regular Member
  • *
  • Posts: 38
Re: JWasm212pre with AVX2
« Reply #11 on: November 19, 2014, 07:22:57 AM »
Quote
I am also planing to implement RIP instruction
I am also planing to translate it to 64 bit assembly language

Sounds like a plan. 8)

Quote
However, I have no idea about GIT and how it works

Ok.
I highly recommend this http://www.fossil-scm.org/fossil/doc/tip/www/quickstart.wiki

It is like SQLight for Database solutions, “Self-Containing”, GIT + Wiki in one executable.
 - Getting one up running takes about 1 min. -
 - To learn to use it maybe 15 mins. -

Fossil can act as a stand-alone web server on localhost.
I am using it for my Visual Studio projects.
It is great with graphs everything.

May Hutch could set up something like that for the forum. :bgrin:

There are some great projects moving slowly to oblivion due to the originator abandoned them.
Like "RadASM" etc. such projects could be hosted here and developed further or maintained by members.


habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #12 on: November 19, 2014, 07:57:59 AM »
Thanks for the link Ficko :t

Quote
May Hutch could set up something like that for the forum. :bgrin:

There are some great projects moving slowly to oblivion due to the originator abandoned them.
Like "RadASM" etc. such projects could be hosted here and developed further or maintained by members.

I totally agree with you :biggrin:
Cod-Father

Gunther

  • Member
  • *****
  • Posts: 3518
  • Forgive your enemies, but never forget their names
Re: JWasm212pre with AVX2
« Reply #13 on: November 19, 2014, 08:01:45 AM »
Hi Ficko,

There are some great projects moving slowly to oblivion due to the originator abandoned them.
Like "RadASM" etc. such projects could be hosted here and developed further or maintained by members.

that's a reasonable proposal. I hope that jWasm isn't orphaned. Anyway, Habran made an excellent job.  :t

Gunther
Get your facts first, and then you can distort them.

habran

  • Member
  • *****
  • Posts: 1116
    • uasm
Re: JWasm212pre with AVX2
« Reply #14 on: November 19, 2014, 08:10:43 AM »
Thanks Gunther :biggrin:
Have you tested it yet?
Cod-Father