[Vm-dev] VM Maker: VMMaker.oscog-EstebanLorenzano.2017.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Dec 1 14:31:17 UTC 2016


Esteban Lorenzano uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-EstebanLorenzano.2017.mcz

==================== Summary ====================

Name: VMMaker.oscog-EstebanLorenzano.2017
Author: EstebanLorenzano
Time: 1 December 2016, 3:28:51.876249 pm
UUID: c281aa9a-56c7-44fb-8887-032c11bbcc11
Ancestors: VMMaker.oscog-cb.2016

my fix didn't work. 
roolling back and adding a check to fix the loading problem. 
I think Eliot will want to fix correctly this...

2017. We are in the future now. I would like to quote some historical event like "for the first time in history, humanity joins to stop greed, nonsense and stupidity, and thanks to that world hunger is something of past, wars are over and global warming has stop. We will survive.". 
It doesn't feels like we are going that way 9nont even for 3017), but you never know... dreaming is a powerful force.

=============== Diff against VMMaker.oscog-cb.2016 ===============

Item was changed:
  ----- Method: CogX64Compiler class>>initialize (in category 'class initialization') -----
  initialize
  	"Initialize various x64 instruction-related constants.
  	 [1] IA-32 Intel® Architecture Software Developer's Manual Volume 2A: Instruction Set Reference, A-M"
  
  	"CogX64Compiler initialize"
  
  	self ~~ CogX64Compiler ifTrue: [^self].
  
+ 	initializationOptions ifNil: [ initializationOptions := Dictionary new ].
+ 	initializationOptions
+ 		at: #ABI
+ 		ifPresent: [:abi| SysV := abi asUppercase ~= #WIN64]
+ 		ifAbsent: [SysV := true]. "Default ABI; set to true for SysV, false for WIN64"
+ 
  	RAX := 0.
  	RCX := 1.  "Were they completely mad or simply sadistic?"
  	RDX := 2.
  	RBX := 3.
  	RSP := 4.
  	RBP := 5.
  	RSI := 6.
  	RDI := 7.
  	R8 := 8.
  	R9 := 9.
  	R10 := 10.
  	R11 := 11.
  	R12 := 12.
  	R13 := 13.
  	R14 := 14.
  	R15 := 15.
  
  	XMM0L := 0.
  	XMM1L := 1.
  	XMM2L := 2.
  	XMM3L := 3.
  	XMM4L := 4.
  	XMM5L := 5.
  	XMM6L := 6.
  	XMM7L := 7.
  	XMM8L := 8.
  	XMM9L := 9.
  	XMM10L := 10.
  	XMM11L := 11.
  	XMM12L := 12.
  	XMM13L := 13.
  	XMM14L := 14.
  	XMM15L := 15.
  
  	"Mod R/M Mod fields.  See [1] Sec 2.4, 2.5 & 2.6 & Table 2-2"
  	ModRegInd := 0.
  		ModRegIndSIB := 4.
  		ModRegIndDisp32 := 5.
  	ModRegRegDisp8 := 1.
  	ModRegRegDisp32 := 2.
  	ModReg := 3.
  
  	"SIB Scaled Index modes.  See [1] Sec 2.4, 2.5 & 2.6 & Table 2-3"
  	SIB1 := 0.
  	SIB2 := 1.
  	SIB4 := 2.
  	SIB8 := 3.
  
  	"Specific instructions"
  	self
  		initializeSpecificOpcodes: #(CDQ IDIVR IMULRR CPUID LFENCE MFENCE SFENCE LOCK CMPXCHGAwR CMPXCHGMwrR XCHGAwR XCHGMwrR XCHGRR)
  		in: thisContext method!

Item was removed:
- ----- Method: CogX64Compiler class>>initializeMiscConstants (in category 'class initialization') -----
- initializeMiscConstants
- 	super initializeMiscConstants.
- 	initializationOptions
- 		at: #ABI
- 		ifPresent: [:abi| SysV := abi asUppercase ~= #WIN64]
- 		ifAbsent: [SysV := true]. "Default ABI; set to true for SysV, false for WIN64"
- !



More information about the Vm-dev mailing list