Nicolas Cellier uploaded a new version of Cog to project VM Maker: http://source.squeak.org/VMMaker/Cog-nice.331.mcz
==================== Summary ====================
Name: Cog-nice.331 Author: nice Time: 29 November 2016, 2:33:51.558777 am UUID: 892573e1-367b-4f88-91f5-37d8d62e3be2 Ancestors: Cog-eem.330
Fix the Win64 x64 register arguments
=============== Diff against Cog-eem.330 ===============
Item was changed: ----- Method: BochsX64Alien>>postCallArgumentsNumArgs:in: (in category 'execution') ----- postCallArgumentsNumArgs: numArgs "<Integer>" in: memory "<ByteArray|Bitmap>" "Answer an argument vector of the requested size after a vanilla + ABI call. On X64 this simply means accessing register arguments. - ABI call. On X86 this simply means accessing register arguments. For compatibility with Cog/Slang we answer unsigned values." self assert: numArgs <= 4. "Microsoft & System V agree for the first 4 reg args oinly" + ^((CogX64Compiler isSysV - ^((CogX64Compiler ABI == #SysV ifTrue: [#(rdi rsi rdx rcx r8 r9)] + ifFalse: [#(rcx rdx r8 r9)]) copyFrom: 1 to: numArgs) collect: - ifFalse: [#(rdi rsi r8 r9)]) copyFrom: 1 to: numArgs) collect: [:getter| self perform: getter]!
vm-dev@lists.squeakfoundation.org