VM Maker Inbox: VMMaker.oscog-KenD.2511.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

VM Maker Inbox: VMMaker.oscog-KenD.2511.mcz

commits-2
 
A new version of VMMaker was added to project VM Maker Inbox:
http://source.squeak.org/VMMakerInbox/VMMaker.oscog-KenD.2511.mcz

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

Name: VMMaker.oscog-KenD.2511
Author: KenD
Time: 22 January 2019, 9:00:55.084764 am
UUID: d4e9e0d4-b0bb-4bf0-84c0-b173cf9d8362
Ancestors: VMMaker.oscog-eem.2510

Needed
  StackInterpreter initializeMiscConstants.
and
  double -> float for floatArgRegisters

=============== Diff against VMMaker.oscog-eem.2510 ===============

Item was changed:
  ----- Method: ThreadedFFICalloutStateForARM64 class>>instVarNamesAndTypesForTranslationDo: (in category 'translation') -----
  instVarNamesAndTypesForTranslationDo: aBinaryBlock
  "enumerate aBinaryBlock with the names and C type strings for the inst vars to include in a ThreadedFFICalloutState struct."
 
  superclass instVarNamesAndTypesForTranslationDo: aBinaryBlock.
  self instVarNames do:
  [:ivn|
  aBinaryBlock
  value: ivn
  value: (ivn caseOf: {
  ['integerRegisters'] -> [{#sqInt. '[NumIntRegArgs]'}].
+ ['floatRegisters'] -> [{#float. '[NumFloatRegArgs]'}] }
- ['floatRegisters'] -> [{#double. '[NumFloatRegArgs]'}] }
  otherwise:
  [#sqInt])]!

Reply | Threaded
Open this post in threaded view
|

Re: VM Maker Inbox: VMMaker.oscog-KenD.2511.mcz

Eliot Miranda-2
 
Hi Ken,

    I don’t understand this proposed change.  float is a 32-bit datatype, double is a 64-bit datatype.  My understanding is that on ARM64 floating-point arguments are passed as doubles.  What am I missing?

_,,,^..^,,,_ (phone)

> On Jan 22, 2019, at 9:02 AM, [hidden email] wrote:
>
>
> A new version of VMMaker was added to project VM Maker Inbox:
> http://source.squeak.org/VMMakerInbox/VMMaker.oscog-KenD.2511.mcz
>
> ==================== Summary ====================
>
> Name: VMMaker.oscog-KenD.2511
> Author: KenD
> Time: 22 January 2019, 9:00:55.084764 am
> UUID: d4e9e0d4-b0bb-4bf0-84c0-b173cf9d8362
> Ancestors: VMMaker.oscog-eem.2510
>
> Needed
>  StackInterpreter initializeMiscConstants.
> and
>  double -> float for floatArgRegisters
>
> =============== Diff against VMMaker.oscog-eem.2510 ===============
>
> Item was changed:
>  ----- Method: ThreadedFFICalloutStateForARM64 class>>instVarNamesAndTypesForTranslationDo: (in category 'translation') -----
>  instVarNamesAndTypesForTranslationDo: aBinaryBlock
>      "enumerate aBinaryBlock with the names and C type strings for the inst vars to include in a ThreadedFFICalloutState struct."
>
>      superclass instVarNamesAndTypesForTranslationDo: aBinaryBlock.
>      self instVarNames do:
>          [:ivn|
>          aBinaryBlock
>              value: ivn
>              value: (ivn caseOf: {
>                          ['integerRegisters']    -> [{#sqInt. '[NumIntRegArgs]'}].
> +                        ['floatRegisters']    -> [{#float. '[NumFloatRegArgs]'}] }
> -                        ['floatRegisters']    -> [{#double. '[NumFloatRegArgs]'}] }
>                      otherwise:
>                          [#sqInt])]!
>