[commit][3318] JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

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

[commit][3318] JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

commits-3
 
Revision: 3318
Author:   johnmci
Date:     2015-05-03 14:57:16 -0700 (Sun, 03 May 2015)
Log Message:
-----------
JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

Modified Paths:
--------------
    trunk/platforms/iOS/vm/Common/Classes/sqSqueakFileDirectoryAPI.m
    trunk/platforms/iOS/vm/OSX/Credits.rtf
    trunk/platforms/iOS/vm/OSX/SqueakOSXAppDelegate.m
    trunk/platforms/iOS/vm/OSX/plugins/HostWindowPlugin/sqMacHostWindow.m
    trunk/platforms/iOS/vm/SqueakPureObjc-Info 64x64.plist
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.pbxproj
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.xcworkspace/xcuserdata/johnmci.xcuserdatad/UserInterfaceState.xcuserstate
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakNoOGLIPhone.xcscheme
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc.xcscheme
    trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc64*64.xcscheme
    trunk/platforms/iOS/vm/SqueakPureObjc_Prefix.pch
    trunk/platforms/iOS/vm/src/vm/interp.c

Modified: trunk/platforms/iOS/vm/Common/Classes/sqSqueakFileDirectoryAPI.m
===================================================================
--- trunk/platforms/iOS/vm/Common/Classes/sqSqueakFileDirectoryAPI.m 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/Common/Classes/sqSqueakFileDirectoryAPI.m 2015-05-03 21:57:16 UTC (rev 3318)
@@ -56,13 +56,11 @@
  filenameSize is size of file name
  fType and fCreator is type and creator codes (4 bytes preallocated)
  */
-    @autoreleasepool {
     sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic dir_GetMacFileTypeAndCreator: filename
                                                                                           fileNameSize: filenameSize
                                                                                                  fType: fType
                                                                                               fCreator: fCreator];
  return status;
-    }
 }
 
 sqInt dir_SetMacFileTypeAndCreator(char *filename, sqInt filenameSize, char *fType, char *fCreator) {
@@ -71,14 +69,12 @@
  filenameSize is size of file name
  fType and fCreator is type and creator codes (4 bytes)
  */
-    @autoreleasepool {
  sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic dir_SetMacFileTypeAndCreator: filename
  fileNameSize: filenameSize
  fType: fType
  fCreator: fCreator];
 
  return status;
-    }
 }
 
 sqInt dir_Delimitor(void)
@@ -103,7 +99,6 @@
  /*Implementation notes
  if pathStringLength = 0 then we use the current working directory
  if pathStringLength > 0 then we resolve the pathString and alias */
-    @autoreleasepool {
     sqInt status =
  [gDelegateApp.squeakApplication.fileDirectoryLogic dir_Lookup: pathString
  length: pathStringLength
@@ -115,14 +110,12 @@
  isDirectory: isDirectory
  sizeIfFile: sizeIfFile];
  return status;
-    }
 }
 
 sqInt dir_EntryLookup(char *pathString, sqInt pathStringLength, char* nameString, sqInt nameStringLength,
 /* outputs: */  char *name, sqInt *nameLength, sqInt *creationDate, sqInt *modificationDate,
   sqInt *isDirectory, squeakFileOffsetType *sizeIfFile)
 {
- @autoreleasepool {
  sqInt status =
  [gDelegateApp.squeakApplication.fileDirectoryLogic dir_EntryLookup: pathString
    length: pathStringLength
@@ -135,31 +128,25 @@
   isDirectory: isDirectory
    sizeIfFile: sizeIfFile];
  return status;
-    }
 }
 
 sqInt dir_Create(char *pathString, sqInt pathStringLength){
  //API Documented
-    @autoreleasepool {
  sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic
  dir_Create: pathString
  length: pathStringLength];
  return status;
-    }
 }
 
 sqInt dir_Delete(char *pathString, sqInt pathStringLength){
-    @autoreleasepool {
  sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic
  dir_Delete: pathString
  length: pathStringLength];
  return status;
-    }
 }
 
 NSString* createFilePathFromString(char * aFilenameString,
  sqInt filenameLength, sqInt resolveAlias) {
- @autoreleasepool {
  NSString * filePath = [[NSString alloc] initWithBytes: aFilenameString length: (NSUInteger) filenameLength encoding: NSUTF8StringEncoding];
  if (!filePath) {
  return NULL;
@@ -173,7 +160,6 @@
  filePath = [newFilePath stringByAppendingPathComponent: [filePath lastPathComponent]];
  }
  return filePath;
-    }
 }
 
 sqInt sqGetFilenameFromString(char * aCharBuffer, char * aFilenameString,

Modified: trunk/platforms/iOS/vm/OSX/Credits.rtf
===================================================================
--- trunk/platforms/iOS/vm/OSX/Credits.rtf 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/OSX/Credits.rtf 2015-05-03 21:57:16 UTC (rev 3318)
@@ -1,6 +1,7 @@
-{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf320
+{\rtf1\ansi\ansicpg1252\cocoartf1347\cocoasubrtf570
 {\fonttbl\f0\fswiss\fcharset0 Helvetica;}
 {\colortbl;\red255\green255\blue255;}
+\viewkind0
 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\qc
 
 \f0\fs22 \cf0 Thanks to the European Smalltalk User Group\
@@ -8,7 +9,7 @@
 and the Cocoa OS-X rewrite for 64 bits.\
 \
 OS-X & iOS port: John M McIntosh.\
-Copyright (c) 2009-2010 Corporate Smalltalk Consulting Ltd.\
+Copyright (c) 2009-2015 Corporate Smalltalk Consulting Ltd.\
 \
 With some code by Ian Piumarta, \
 clues from Marcel Weiher's Cocoa port,\

Modified: trunk/platforms/iOS/vm/OSX/SqueakOSXAppDelegate.m
===================================================================
--- trunk/platforms/iOS/vm/OSX/SqueakOSXAppDelegate.m 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/OSX/SqueakOSXAppDelegate.m 2015-05-03 21:57:16 UTC (rev 3318)
@@ -70,7 +70,8 @@
  self.window.delegate =  windowHandler;
  self.window.contentResizeIncrements = NSMakeSize(8.0f,8.0f);
  [self.squeakApplication setupEventQueue];
-
+        extern sqInt initializeImageFormatVersionIfNeeded(void);
+        initializeImageFormatVersionIfNeeded();
  [self singleThreadStart];
 // [self workerThreadStart];
 

Modified: trunk/platforms/iOS/vm/OSX/plugins/HostWindowPlugin/sqMacHostWindow.m
===================================================================
--- trunk/platforms/iOS/vm/OSX/plugins/HostWindowPlugin/sqMacHostWindow.m 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/OSX/plugins/HostWindowPlugin/sqMacHostWindow.m 2015-05-03 21:57:16 UTC (rev 3318)
@@ -55,7 +55,7 @@
  return -1;
 }
 
-int closeWindow(int windowIndex) {
+sqInt closeWindow(sqInt windowIndex) {
  NSWindow *windowHandle = windowHandleFromIndex(windowIndex);
  if(windowHandle == NULL)
  return 0;

Modified: trunk/platforms/iOS/vm/SqueakPureObjc-Info 64x64.plist
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc-Info 64x64.plist 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc-Info 64x64.plist 2015-05-03 21:57:16 UTC (rev 3318)
@@ -366,7 +366,7 @@
  <key>CFBundleSignature</key>
  <string>FAST</string>
  <key>CFBundleVersion</key>
- <string>30.0</string>
+ <string>31.0</string>
  <key>LSApplicationCategoryType</key>
  <string>public.app-category.developer-tools</string>
  <key>LSBackgroundOnly</key>

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.pbxproj
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.pbxproj 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.pbxproj 2015-05-03 21:57:16 UTC (rev 3318)
@@ -72,6 +72,31 @@
  9458525C10F043EB001401E7 /* sqSqueakIPhoneApplication+clipboard.m in Sources */ = {isa = PBXBuildFile; fileRef = 9458525B10F043EB001401E7 /* sqSqueakIPhoneApplication+clipboard.m */; };
  945C95FF0E97084C00529DC1 /* aio.c in Sources */ = {isa = PBXBuildFile; fileRef = 94883B2A0E0C2A5E005A4738 /* aio.c */; };
  9463943F0E95845000015851 /* squeakSUnitTester.m in Sources */ = {isa = PBXBuildFile; fileRef = 9463943E0E95845000015851 /* squeakSUnitTester.m */; };
+ 9463C1BF1AEE13F3009C5CE5 /* ADPCMCodecPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658E40DDD03FE00358328 /* ADPCMCodecPlugin.c */; };
+ 9463C1C01AEE145C009C5CE5 /* B2DPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658E60DDD03FE00358328 /* B2DPlugin.c */; };
+ 9463C1C11AEE1472009C5CE5 /* BMPReadWriterPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658EC0DDD03FE00358328 /* BMPReadWriterPlugin.c */; };
+ 9463C1C21AEE149A009C5CE5 /* BitBltPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658EA0DDD03FE00358328 /* BitBltPlugin.c */; };
+ 9463C1C31AEE14CD009C5CE5 /* DSAPrims.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658F00DDD03FE00358328 /* DSAPrims.c */; };
+ 9463C1C41AEE14DF009C5CE5 /* DropPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 946DA8D210C0C30D00F26F56 /* DropPlugin.c */; };
+ 9463C1C51AEE150B009C5CE5 /* FFTPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658F20DDD03FE00358328 /* FFTPlugin.c */; };
+ 9463C1C61AEE154A009C5CE5 /* FilePlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658F40DDD03FE00358328 /* FilePlugin.c */; };
+ 9463C1C71AEE155A009C5CE5 /* FloatArrayPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658F60DDD03FE00358328 /* FloatArrayPlugin.c */; };
+ 9463C1C81AEE156E009C5CE5 /* GeniePlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658F80DDD03FE00358328 /* GeniePlugin.c */; };
+ 9463C1C91AEE157B009C5CE5 /* JPEGReadWriter2Plugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659000DDD03FE00358328 /* JPEGReadWriter2Plugin.c */; };
+ 9463C1CA1AEE1588009C5CE5 /* JPEGReaderPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E658FE0DDD03FE00358328 /* JPEGReaderPlugin.c */; };
+ 9463C1CB1AEE1594009C5CE5 /* Klatt.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659020DDD03FE00358328 /* Klatt.c */; };
+ 9463C1CC1AEE15AD009C5CE5 /* Matrix2x3Plugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659060DDD03FE00358328 /* Matrix2x3Plugin.c */; };
+ 9463C1CD1AEE15BC009C5CE5 /* MiscPrimitivePlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E6590A0DDD03FE00358328 /* MiscPrimitivePlugin.c */; };
+ 9463C1CE1AEE15C5009C5CE5 /* RePlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E6590C0DDD03FE00358328 /* RePlugin.c */; };
+ 9463C1CF1AEE15EE009C5CE5 /* SecurityPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E6590E0DDD03FE00358328 /* SecurityPlugin.c */; };
+ 9463C1D01AEE15FB009C5CE5 /* SoundCodecPrims.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659120DDD03FE00358328 /* SoundCodecPrims.c */; };
+ 9463C1D11AEE1607009C5CE5 /* SoundPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659160DDD03FE00358328 /* SoundPlugin.c */; };
+ 9463C1D21AEE1618009C5CE5 /* StarSqueakPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E6591A0DDD03FE00358328 /* StarSqueakPlugin.c */; };
+ 9463C1D31AEE1630009C5CE5 /* SoundGenerationPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E659140DDD03FE00358328 /* SoundGenerationPlugin.c */; };
+ 9463C1D41AEE1688009C5CE5 /* chartables.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E65A290DDD053900358328 /* chartables.c */; };
+ 9463C1D51AEE168C009C5CE5 /* get.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E65A2B0DDD053900358328 /* get.c */; };
+ 9463C1D61AEE168F009C5CE5 /* pcre.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E65A2E0DDD053900358328 /* pcre.c */; };
+ 9463C1D71AEE1693009C5CE5 /* study.c in Sources */ = {isa = PBXBuildFile; fileRef = 94E65A340DDD053900358328 /* study.c */; };
  946DA8D310C0C30D00F26F56 /* DropPlugin.c in Sources */ = {isa = PBXBuildFile; fileRef = 946DA8D210C0C30D00F26F56 /* DropPlugin.c */; };
  946DA91510C0C71100F26F56 /* sqSqueakOSXDropAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 946DA91410C0C71100F26F56 /* sqSqueakOSXDropAPI.m */; };
  946DAA0010C0D35500F26F56 /* sqMacUnixExternalPrims.m in Sources */ = {isa = PBXBuildFile; fileRef = 946DA9FF10C0D35500F26F56 /* sqMacUnixExternalPrims.m */; };
@@ -2596,9 +2621,11 @@
  9487742810C64DD800E4AEC5 /* Error.c in Sources */,
  9487742910C64DD800E4AEC5 /* jcapimin.c in Sources */,
  9487742A10C64DD800E4AEC5 /* jcapistd.c in Sources */,
+ 9463C1CF1AEE15EE009C5CE5 /* SecurityPlugin.c in Sources */,
  942875511AEC5624007958BD /* ObjectiveCPlugin.c in Sources */,
  9487742B10C64DD800E4AEC5 /* jccoefct.c in Sources */,
  9487742C10C64DD800E4AEC5 /* jccolor.c in Sources */,
+ 9463C1BF1AEE13F3009C5CE5 /* ADPCMCodecPlugin.c in Sources */,
  9487742D10C64DD800E4AEC5 /* jcdctmgr.c in Sources */,
  9487742E10C64DD800E4AEC5 /* jchuff.c in Sources */,
  9487742F10C64DD800E4AEC5 /* jcinit.c in Sources */,
@@ -2611,6 +2638,7 @@
  9487743610C64DD800E4AEC5 /* jcprepct.c in Sources */,
  9487743710C64DD800E4AEC5 /* jcsample.c in Sources */,
  9487743810C64DD800E4AEC5 /* jctrans.c in Sources */,
+ 9463C1C31AEE14CD009C5CE5 /* DSAPrims.c in Sources */,
  9487743910C64DD800E4AEC5 /* jdapimin.c in Sources */,
  94C3176C1AD49B020096E59D /* sqUnixLocale.c in Sources */,
  9487743A10C64DD800E4AEC5 /* jdapistd.c in Sources */,
@@ -2620,7 +2648,10 @@
  9487743E10C64DD800E4AEC5 /* jdcolor.c in Sources */,
  9487743F10C64DD800E4AEC5 /* jddctmgr.c in Sources */,
  9487744010C64DD800E4AEC5 /* jdhuff.c in Sources */,
+ 9463C1C21AEE149A009C5CE5 /* BitBltPlugin.c in Sources */,
+ 9463C1C81AEE156E009C5CE5 /* GeniePlugin.c in Sources */,
  9487744110C64DD800E4AEC5 /* jdinput.c in Sources */,
+ 9463C1CE1AEE15C5009C5CE5 /* RePlugin.c in Sources */,
  9487744210C64DD800E4AEC5 /* jdmainct.c in Sources */,
  94C3175E1AD49A030096E59D /* sqUnixSerial.c in Sources */,
  9487744310C64DD800E4AEC5 /* jdmarker.c in Sources */,
@@ -2633,12 +2664,15 @@
  9487744910C64DD800E4AEC5 /* jdtrans.c in Sources */,
  9487744A10C64DD800E4AEC5 /* jerror.c in Sources */,
  9487744B10C64DD800E4AEC5 /* jfdctflt.c in Sources */,
+ 9463C1CB1AEE1594009C5CE5 /* Klatt.c in Sources */,
+ 9463C1D41AEE1688009C5CE5 /* chartables.c in Sources */,
  9487744C10C64DD800E4AEC5 /* jfdctfst.c in Sources */,
  9487744D10C64DD800E4AEC5 /* jfdctint.c in Sources */,
  9487744E10C64DD800E4AEC5 /* jidctflt.c in Sources */,
  9487744F10C64DD800E4AEC5 /* jidctfst.c in Sources */,
  9487745010C64DD800E4AEC5 /* jidctint.c in Sources */,
  9487745110C64DD800E4AEC5 /* jidctred.c in Sources */,
+ 9463C1CD1AEE15BC009C5CE5 /* MiscPrimitivePlugin.c in Sources */,
  9487745210C64DD800E4AEC5 /* jmemdatadst.c in Sources */,
  9487745310C64DD800E4AEC5 /* jmemdatasrc.c in Sources */,
  9487745410C64DD800E4AEC5 /* jmemmgr.c in Sources */,
@@ -2647,12 +2681,15 @@
  9487745710C64DD800E4AEC5 /* jquant2.c in Sources */,
  9487745810C64DD800E4AEC5 /* jutils.c in Sources */,
  9487745910C64DD800E4AEC5 /* b3dAlloc.c in Sources */,
+ 9463C1C91AEE157B009C5CE5 /* JPEGReadWriter2Plugin.c in Sources */,
  9487745A10C64DD800E4AEC5 /* b3dDraw.c in Sources */,
  9487745B10C64DD800E4AEC5 /* b3dInit.c in Sources */,
+ 9463C1D61AEE168F009C5CE5 /* pcre.c in Sources */,
  9487745C10C64DD800E4AEC5 /* b3dMain.c in Sources */,
  94D921591AC6327200A5970F /* interp.c in Sources */,
  9487745D10C64DD800E4AEC5 /* b3dRemap.c in Sources */,
  9487745E10C64DD800E4AEC5 /* sqSoundCodecPluginBasicPrims.c in Sources */,
+ 9463C1D01AEE15FB009C5CE5 /* SoundCodecPrims.c in Sources */,
  9487746310C64DD800E4AEC5 /* sqUnixUUID.c in Sources */,
  94D9215B1AC6337D00A5970F /* sqManualSurface.c in Sources */,
  9487746410C64DD800E4AEC5 /* sqSqueakMainApplication+imageReadWrite.m in Sources */,
@@ -2662,23 +2699,30 @@
  9487746910C64DD800E4AEC5 /* sqMacV2Time.c in Sources */,
  9487746A10C64DD800E4AEC5 /* sqSqueakFileDirectoryAPI.m in Sources */,
  9487746B10C64DD800E4AEC5 /* sqSqueakFileDirectoryInterface.m in Sources */,
+ 9463C1D21AEE1618009C5CE5 /* StarSqueakPlugin.c in Sources */,
  9487746C10C64DD800E4AEC5 /* sqSqueakMainApp.m in Sources */,
  94C3175A1AD499630096E59D /* sqUnixAsynchFile.c in Sources */,
  9487746D10C64DD800E4AEC5 /* sqSqueakMainApplication+vmAndImagePath.m in Sources */,
  9487746E10C64DD800E4AEC5 /* sqSqueakMainApplication.m in Sources */,
  9487746F10C64DD800E4AEC5 /* sqSqueakAttributesAPI.m in Sources */,
  9487747010C64DD800E4AEC5 /* sqSqueakEventsAPI.m in Sources */,
+ 9463C1C01AEE145C009C5CE5 /* B2DPlugin.c in Sources */,
  9487747110C64DD800E4AEC5 /* sqSqueakScreenAndWindow.m in Sources */,
  9487747210C64DD800E4AEC5 /* sqSqueakAppDelegate.m in Sources */,
  9487747310C64DD800E4AEC5 /* sqSqueakVmAndImagePathAPI.m in Sources */,
  9487747410C64DD800E4AEC5 /* sqSqueakMainApplication+attributes.m in Sources */,
+ 9463C1D11AEE1607009C5CE5 /* SoundPlugin.c in Sources */,
  9487747610C64DD800E4AEC5 /* sqUnixSocket.c in Sources */,
  9487747710C64DD800E4AEC5 /* sqSqueakMainApplication+events.m in Sources */,
  9487747810C64DD800E4AEC5 /* sqSqueakSoundAPI.m in Sources */,
  9487747910C64DD800E4AEC5 /* sqSqueakMainApplication+sound.m in Sources */,
+ 9463C1C61AEE154A009C5CE5 /* FilePlugin.c in Sources */,
  9487747A10C64DD800E4AEC5 /* sqSqueakInfoPlistInterface.m in Sources */,
+ 9463C1D31AEE1630009C5CE5 /* SoundGenerationPlugin.c in Sources */,
+ 9463C1C11AEE1472009C5CE5 /* BMPReadWriterPlugin.c in Sources */,
  9487747C10C64DD800E4AEC5 /* squeakSUnitTester.m in Sources */,
  9487747D10C64DD800E4AEC5 /* aio.c in Sources */,
+ 9463C1CA1AEE1588009C5CE5 /* JPEGReaderPlugin.c in Sources */,
  9487747F10C64DD800E4AEC5 /* sqSqueakSoundCoreAudioAPI.m in Sources */,
  9487748010C64DD800E4AEC5 /* sqSqueakSoundCoreAudio.m in Sources */,
  9487748110C64DD800E4AEC5 /* squeakProxy.m in Sources */,
@@ -2689,11 +2733,14 @@
  9487748510C64DD800E4AEC5 /* sqMacSecurity.c in Sources */,
  9487748610C64DD800E4AEC5 /* sqSqueakOSXApplication.m in Sources */,
  9487748910C64DD800E4AEC5 /* sqSqueakOSXFileDirectoryInterface.m in Sources */,
+ 9463C1C71AEE155A009C5CE5 /* FloatArrayPlugin.c in Sources */,
  9487748A10C64DD800E4AEC5 /* sqSqueakOSXApplication+attributes.m in Sources */,
+ 9463C1C41AEE14DF009C5CE5 /* DropPlugin.c in Sources */,
  94C3176A1AD49B020096E59D /* sqUnixJoystickTablet.c in Sources */,
  9487748B10C64DD800E4AEC5 /* sqSqueakOSXInfoPlistInterface.m in Sources */,
  9487748C10C64DD800E4AEC5 /* sqSqueakOSXApplication+imageReadWrite.m in Sources */,
  9487748D10C64DD800E4AEC5 /* sqSqueakOSXScreenAndWindow.m in Sources */,
+ 9463C1D51AEE168C009C5CE5 /* get.c in Sources */,
  9487748E10C64DD800E4AEC5 /* sqSqueakOSXNSView.m in Sources */,
  9487748F10C64DD800E4AEC5 /* macintoshosxextra.c in Sources */,
  9487749010C64DD800E4AEC5 /* sqSqueakOSXApplication+cursor.m in Sources */,
@@ -2707,17 +2754,20 @@
  9487749610C64DD800E4AEC5 /* sqSqueakOSXClipboardAPI.m in Sources */,
  9487749710C64DD800E4AEC5 /* sqSqueakOSXApplication+clipboard.m in Sources */,
  9487749810C64DD800E4AEC5 /* sqSqueakOSXSoundCoreAudio.m in Sources */,
+ 9463C1C51AEE150B009C5CE5 /* FFTPlugin.c in Sources */,
  9487749A10C64DD800E4AEC5 /* sqSqueakOSXDropAPI.m in Sources */,
  9487749B10C64DD800E4AEC5 /* sqMacUnixExternalPrims.m in Sources */,
  94D921561AC6320300A5970F /* SocketPlugin.c in Sources */,
  94C315341AD4949B0096E59D /* AsynchFilePlugin.c in Sources */,
  94C317541AD495CD0096E59D /* LocalePlugin.c in Sources */,
+ 9463C1CC1AEE15AD009C5CE5 /* Matrix2x3Plugin.c in Sources */,
  9402DD6010CE0C16005C2102 /* SqViewBitmapConversion.m in Sources */,
  9402DD7010CE0E91005C2102 /* SqViewClut.m in Sources */,
  94D3654F10CEC86C00805023 /* BitMapConversionLogicFromX11.c in Sources */,
  944069CE10E6B63200353B27 /* MacMenubarPlugin.c in Sources */,
  94B9533510E6BD7100DC476A /* MacMenuOS9ToOSX.m in Sources */,
  94C317511AD495CD0096E59D /* JoystickTabletPlugin.c in Sources */,
+ 9463C1D71AEE1693009C5CE5 /* study.c in Sources */,
  94584FDB10F02378001401E7 /* sqMacExtendedClipboard.m in Sources */,
  943B9CA11235C5120056205E /* sqMacHostWindow.m in Sources */,
  );
@@ -2749,7 +2799,6 @@
  947E5F3610A9FD0400D3B69E /* Debug */ = {
  isa = XCBuildConfiguration;
  buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
  CLANG_ANALYZER_SECURITY_INSECUREAPI_RAND = YES;
  CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES;
  COPY_PHASE_STRIP = NO;
@@ -2761,7 +2810,6 @@
  HEADER_SEARCH_PATHS = /usr/include/uuid;
  MACOSX_DEPLOYMENT_TARGET = 10.7;
  ONLY_ACTIVE_ARCH = YES;
- SDKROOT = macosx;
  SEPARATE_STRIP = YES;
  };
  name = Debug;
@@ -2787,6 +2835,15 @@
  "ISQUEAK_IMAGE=\"iPhone\"",
  "ISQUEAK_SOURCES=\"PharoV10\"",
  );
+ "GCC_PREPROCESSOR_DEFINITIONS[sdk=*]" = (
+ TARGET_OS_IS_IPHONE,
+ USE_INLINE_MEMORY_ACCESSORS,
+ HAVE_SYS_TIME_H,
+ HAVE_NANOSLEEP,
+ SQUEAK_BUILTIN_PLUGIN,
+ "ISQUEAK_IMAGE=\"iPhone\"",
+ "ISQUEAK_SOURCES=\"PharoV10\"",
+ );
  GCC_THUMB_SUPPORT = "";
  INFOPLIST_FILE = "Info-iPhone.plist";
  IPHONEOS_DEPLOYMENT_TARGET = 7.0;
@@ -2802,7 +2859,6 @@
  isa = XCBuildConfiguration;
  buildSettings = {
  ALWAYS_SEARCH_USER_PATHS = NO;
- ARCHS = "$(ARCHS_STANDARD_64_BIT)";
  CLANG_ENABLE_OBJC_ARC = YES;
  CODE_SIGN_IDENTITY = "Developer ID Application";
  COMBINE_HIDPI_IMAGES = YES;
@@ -2821,15 +2877,11 @@
  HAVE_SYS_TIME_H,
  HAVE_NANOSLEEP,
  SQUEAK_BUILTIN_PLUGIN,
- NO_ISNAN,
+ "SQ_VI_BYTES_PER_WORD=4",
  );
- GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
  GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
  INFOPLIST_FILE = "SqueakPureObjc-Info.plist";
- MACOSX_DEPLOYMENT_TARGET = 10.7;
- ONLY_ACTIVE_ARCH = YES;
  PRODUCT_NAME = Squeak;
- SDKROOT = macosx;
  };
  name = Debug;
  };
@@ -2837,7 +2889,6 @@
  isa = XCBuildConfiguration;
  buildSettings = {
  ALWAYS_SEARCH_USER_PATHS = NO;
- ARCHS = "$(ARCHS_STANDARD_64_BIT)";
  CLANG_ENABLE_OBJC_ARC = YES;
  CODE_SIGN_IDENTITY = "Developer ID Application";
  "CODE_SIGN_IDENTITY[sdk=macosx*]" = "iPhone Distribution: Corporate Smalltalk Consulting Ltd";
@@ -2856,25 +2907,17 @@
  HAVE_SYS_TIME_H,
  HAVE_NANOSLEEP,
  SQUEAK_BUILTIN_PLUGIN,
- NO_ISNAN,
+ "SQ_VI_BYTES_PER_WORD=4",
  );
- GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
- "GCC_VERSION[arch=i386]" = com.apple.compilers.llvm.clang.1_0;
- "GCC_VERSION[arch=ppc]" = com.apple.compilers.llvm.clang.1_0;
- "GCC_VERSION[arch=x86_64]" = com.apple.compilers.llvm.clang.1_0;
  INFOPLIST_FILE = "SqueakPureObjc-Info.plist";
- MACOSX_DEPLOYMENT_TARGET = 10.7;
- ONLY_ACTIVE_ARCH = NO;
  PRODUCT_NAME = Squeak;
  "PROVISIONING_PROFILE[sdk=macosx*]" = "3a8c5546-20a8-40a9-afb4-4218872c980c";
- SDKROOT = macosx;
  };
  name = Distribution;
  };
  9480CD150E5C7D9300C32178 /* Distribution */ = {
  isa = XCBuildConfiguration;
  buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT)";
  CLANG_ANALYZER_SECURITY_INSECUREAPI_RAND = YES;
  CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES;
  "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -2886,7 +2929,6 @@
  HEADER_SEARCH_PATHS = /usr/include/uuid;
  MACOSX_DEPLOYMENT_TARGET = 10.7;
  "PROVISIONING_PROFILE[sdk=iphoneos*]" = "65867c1c-f0f6-4de4-84cd-3e77826cb368";
- SDKROOT = macosx;
  SEPARATE_STRIP = YES;
  };
  name = Distribution;
@@ -2928,10 +2970,8 @@
  isa = XCBuildConfiguration;
  buildSettings = {
  ALWAYS_SEARCH_USER_PATHS = NO;
- ARCHS = "$(ARCHS_STANDARD_64_BIT)";
  CODE_SIGN_IDENTITY = "Developer ID Application";
  COMBINE_HIDPI_IMAGES = YES;
- COPY_PHASE_STRIP = NO;
  FRAMEWORK_SEARCH_PATHS = (
  "$(inherited)",
  "$(PROJECT_DIR)",
@@ -2946,14 +2986,13 @@
  HAVE_SYS_TIME_H,
  HAVE_NANOSLEEP,
  SQUEAK_BUILTIN_PLUGIN,
+ "SQ_VI_BYTES_PER_WORD=8",
  );
- GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
  GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  INFOPLIST_FILE = "SqueakPureObjc-Info 64x64.plist";
- MACOSX_DEPLOYMENT_TARGET = 10.7;
  OTHER_CFLAGS = "";
  PRODUCT_NAME = Squeak;
- SDKROOT = macosx;
+ VALID_ARCHS = x86_64;
  };
  name = Debug;
  };
@@ -2961,11 +3000,9 @@
  isa = XCBuildConfiguration;
  buildSettings = {
  ALWAYS_SEARCH_USER_PATHS = NO;
- ARCHS = "$(ARCHS_STANDARD_64_BIT)";
  CODE_SIGN_IDENTITY = "Developer ID Application";
- "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
+ "CODE_SIGN_IDENTITY[sdk=macosx*]" = "iPhone Distribution: Corporate Smalltalk Consulting Ltd (DTYH6QWG79)";
  COMBINE_HIDPI_IMAGES = YES;
- COPY_PHASE_STRIP = YES;
  FRAMEWORK_SEARCH_PATHS = (
  "$(inherited)",
  "$(PROJECT_DIR)",
@@ -2976,20 +3013,18 @@
  GCC_PREFIX_HEADER = SqueakPureObjc_Prefix.pch;
  GCC_PREPROCESSOR_DEFINITIONS = (
  BUILD_FOR_OSX,
- USE_INLINE_MEMORY_ACCESSORS,
  HAVE_SYS_TIME_H,
  HAVE_NANOSLEEP,
  SQUEAK_BUILTIN_PLUGIN,
- NO_ISNAN,
+ "SQ_VI_BYTES_PER_WORD=8",
+ USE_INLINE_MEMORY_ACCESSORS,
  );
- GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
  GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  INFOPLIST_FILE = "SqueakPureObjc-Info 64x64.plist";
- MACOSX_DEPLOYMENT_TARGET = 10.7;
  OTHER_CFLAGS = "";
  PRODUCT_NAME = Squeak;
- "PROVISIONING_PROFILE[sdk=macosx*]" = "";
- SDKROOT = macosx;
+ "PROVISIONING_PROFILE[sdk=macosx*]" = "3a8c5546-20a8-40a9-afb4-4218872c980c";
+ VALID_ARCHS = x86_64;
  };
  name = Distribution;
  };

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/project.xcworkspace/xcuserdata/johnmci.xcuserdatad/UserInterfaceState.xcuserstate
===================================================================
(Binary files differ)

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist 2015-05-03 21:57:16 UTC (rev 3318)
@@ -179,5 +179,21 @@
             landmarkType = "5">
          </BreakpointContent>
       </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "iPhone/sqMacV2Memory.c"
+            timestampString = "451791413.950783"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "118"
+            endingLineNumber = "118"
+            landmarkName = "sqAllocateMemoryMac()"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
    </Breakpoints>
 </Bucket>

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakNoOGLIPhone.xcscheme
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakNoOGLIPhone.xcscheme 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakNoOGLIPhone.xcscheme 2015-05-03 21:57:16 UTC (rev 3318)
@@ -32,7 +32,7 @@
    </TestAction>
    <LaunchAction
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       displayScaleIsEnabled = "NO"
       displayScale = "1.00"
       launchStyle = "0"
@@ -41,7 +41,8 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       allowLocationSimulation = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "1D6058900D05DD3D006BFB54"
@@ -78,7 +79,8 @@
       useCustomWorkingDirectory = "NO"
       buildConfiguration = "Debug"
       debugDocumentVersioning = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "1D6058900D05DD3D006BFB54"
@@ -92,7 +94,7 @@
       buildConfiguration = "Debug">
    </AnalyzeAction>
    <ArchiveAction
-      buildConfiguration = "Debug"
+      buildConfiguration = "Distribution"
       revealArchiveInOrganizer = "YES">
    </ArchiveAction>
 </Scheme>

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc.xcscheme
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc.xcscheme 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc.xcscheme 2015-05-03 21:57:16 UTC (rev 3318)
@@ -32,7 +32,7 @@
    </TestAction>
    <LaunchAction
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       displayScaleIsEnabled = "NO"
       displayScale = "1.00"
       launchStyle = "0"
@@ -41,7 +41,8 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       allowLocationSimulation = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "947E626F10AA098300D3B69E"
@@ -130,7 +131,8 @@
       useCustomWorkingDirectory = "NO"
       buildConfiguration = "Debug"
       debugDocumentVersioning = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "947E626F10AA098300D3B69E"
@@ -144,7 +146,7 @@
       buildConfiguration = "Debug">
    </AnalyzeAction>
    <ArchiveAction
-      buildConfiguration = "Debug"
+      buildConfiguration = "Distribution"
       revealArchiveInOrganizer = "YES">
    </ArchiveAction>
 </Scheme>

Modified: trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc64*64.xcscheme
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc64*64.xcscheme 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc.xcodeproj/xcuserdata/johnmci.xcuserdatad/xcschemes/SqueakPureObjc64*64.xcscheme 2015-05-03 21:57:16 UTC (rev 3318)
@@ -32,7 +32,7 @@
    </TestAction>
    <LaunchAction
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       displayScaleIsEnabled = "NO"
       displayScale = "1.00"
       launchStyle = "0"
@@ -41,7 +41,8 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       allowLocationSimulation = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "948773F910C64DD800E4AEC5"
@@ -61,7 +62,8 @@
       useCustomWorkingDirectory = "NO"
       buildConfiguration = "Debug"
       debugDocumentVersioning = "YES">
-      <BuildableProductRunnable>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "948773F910C64DD800E4AEC5"
@@ -75,7 +77,7 @@
       buildConfiguration = "Debug">
    </AnalyzeAction>
    <ArchiveAction
-      buildConfiguration = "Debug"
+      buildConfiguration = "Distribution"
       revealArchiveInOrganizer = "YES">
    </ArchiveAction>
 </Scheme>

Modified: trunk/platforms/iOS/vm/SqueakPureObjc_Prefix.pch
===================================================================
--- trunk/platforms/iOS/vm/SqueakPureObjc_Prefix.pch 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/SqueakPureObjc_Prefix.pch 2015-05-03 21:57:16 UTC (rev 3318)
@@ -1,5 +1,5 @@
 //
-// Prefix header for all source files of the 'Untitled2' target in the 'Untitled2' project
+// Prefix header for all source files of the 'SqueakPureObjC' target in the 'SqueakPureObjC' project
 //
 
 #ifdef __OBJC__

Modified: trunk/platforms/iOS/vm/src/vm/interp.c
===================================================================
--- trunk/platforms/iOS/vm/src/vm/interp.c 2015-05-03 03:11:13 UTC (rev 3317)
+++ trunk/platforms/iOS/vm/src/vm/interp.c 2015-05-03 21:57:16 UTC (rev 3318)
@@ -1,28991 +1,28996 @@
-/* Smalltalk from Squeak4.5 with VMMaker 4.13.12 translated as C source on 28 March 2015 8:15:47 pm */
-/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker-dtl.359 uuid: 3d5b8023-e045-437f-a85a-02036bc57e00
-   from
- Interpreter VMMaker-dtl.359 uuid: 3d5b8023-e045-437f-a85a-02036bc57e00
- */
-static char __buildInfo[] = "Interpreter VMMaker-dtl.359 uuid: 3d5b8023-e045-437f-a85a-02036bc57e00 " __DATE__ ;
-char *__interpBuildInfo = __buildInfo;
-
-
-
-#if 1
-# define SQ_USE_GLOBAL_STRUCT 1
-#else
-# define SQ_USE_GLOBAL_STRUCT 0
-#endif
-
-#include "sq.h"
-#include <setjmp.h>
-
-#ifndef assert
- #include <assert.h>
-#endif
-
-#ifndef allocateMemoryMinimumImageFileHeaderSize
- /* Called by Interpreter>>allocateMemory:minimum:imageFile:headerSize: */
- /* Default definition if not previously defined in config.h */
- #define allocateMemoryMinimumImageFileHeaderSize(heapSize, minimumMemory, fileStream, headerSize) \
-    sqAllocateMemory(minimumMemory, heapSize)
-#endif
-
-#ifndef sqImageFileReadEntireImage
- /* Called by Interpreter>>sqImage:read:size:length: */
- /* Default definition if not previously defined in config.h */
- #define sqImageFileReadEntireImage(memoryAddress, elementSize,  length, fileStream) \
-    sqImageFileRead(memoryAddress, elementSize,  length, fileStream)
-#endif
-
-#ifndef error
- /* error() function called from Interpreter */
- /* Default definition if not previously defined in config.h */
- #define error(str) defaultErrorProc(str)
-#endif
-
-#ifndef ioMicroSecondClock
- /* Called by Interpreter>>primitiveMicrosecondClock and GC methods */
- /* Default definition if not previously defined in config.h */
- #define ioMicroSecondClock ioMSecs
-#endif
-
-#ifndef ioUtcWithOffset
- /* Called by Interpreter>>primitiveUtcWithOffset */
- /* Default definition if not previously defined in config.h */
- #define ioUtcWithOffset(clock, offset) setMicroSecondsandOffset(clock, offset)
-#endif
-
-#include "sqMemoryAccess.h"
-
-sqInt printCallStack(void);
-void defaultErrorProc(char *s) {
- /* Print an error message and exit. */
- static sqInt printingStack = false;
-
- printf("\n%s\n\n", s);
- if (!printingStack) {
- /* flag prevents recursive error when trying to print a broken stack */
- printingStack = true;
- printCallStack();
- }
- exit(-1);
-}
-
-/*** Constants ***/
-#define ActiveProcessIndex 1
-#define AtCacheFixedFields 4
-#define AtCacheFmt 3
-#define AtCacheMask 28
-#define AtCacheOop 1
-#define AtCacheSize 2
-#define AtCacheTotalSize 64
-#define AtPutBase 32
-#define BlockArgumentCountIndex 3
-#define Byte0Mask 0xFF
-#define Byte1Mask 0xFF00
-#define Byte1Shift 8
-#define Byte1ShiftNegated -8
-#define Byte2Mask 0xFF0000
-#define Byte3Mask 0xFF000000U
-#define Byte3Shift 24
-#define Byte3ShiftNegated -24
-#define Byte4Mask 0xFF00000000ULL
-#define Byte4Shift 32
-#define Byte4ShiftNegated -32
-#define Byte5Mask 0xFF0000000000ULL
-#define Byte5Shift 40
-#define Byte5ShiftNegated -40
-#define Byte6Mask 0xFF000000000000ULL
-#define Byte7Mask 0xFF00000000000000ULL
-#define Byte7Shift 56
-#define Byte7ShiftNegated -56
-#define Bytes3to0Mask 0xFFFFFFFFU
-#define Bytes7to4Mask 0xFFFFFFFF00000000ULL
-#define CacheProbeMax 3
-#define CallerIndex 0
-#define CharacterTable 24
-#define CharacterValueIndex 0
-#define ClassAlien 52
-#define ClassArray 7
-#define ClassBitmap 4
-#define ClassBlockClosure 36
-#define ClassBlockContext 11
-#define ClassByteArray 26
-#define ClassCharacter 19
-#define ClassExternalAddress 43
-#define ClassExternalData 45
-#define ClassExternalFunction 46
-#define ClassExternalLibrary 47
-#define ClassExternalStructure 44
-#define ClassFloat 9
-#define ClassInteger 5
-#define ClassLargeNegativeInteger 42
-#define ClassLargeNegativeIntegerCompactIndex 4
-#define ClassLargePositiveInteger 13
-#define ClassLargePositiveIntegerCompactIndex 5
-#define ClassMessage 15
-#define ClassMethodContext 10
-#define ClassPoint 12
-#define ClassSemaphore 18
-#define ClassString 6
-#define ClassUnsafeAlien 54
-#define ClassWeakFinalizer 55
-#define ClosureFirstCopiedValueIndex 3
-#define ClosureIndex 4
-#define ClosureNumArgsIndex 2
-#define ClosureOuterContextIndex 0
-#define ClosureStartPCIndex 1
-#define CompactClassMask 0x1F000
-#define CompactClasses 28
-#define ConstMinusOne -1
-#define ConstOne 3
-#define ConstTwo 5
-#define ConstZero 1
-#define ContextFixedSizePlusHeader 7
-#define CrossedX 258
-#define CtxtTempFrameStart 6
-#define DoAssertionChecks 0
-#define DoBalanceChecks 0
-#define Done 4
-#define EndOfRun 257
-#define ExcessSignalsIndex 2
-#define ExternalObjectsArray 38
-#define ExtraRootSize 2048
-#define FalseObject 1
-#define FirstLinkIndex 0
-#define GCTopMarker 3
-#define HashBits 0x1FFE0000
-#define HashBitsOffset 17
-#define HashMaskUnshifted 0xFFF
-#define HeaderIndex 0
-#define HeaderTypeClass 1
-#define HeaderTypeFree 2
-#define HeaderTypeGC 2
-#define HeaderTypeShort 3
-#define HeaderTypeSizeAndClass 0
-#define HomeIndex 5
-#define InitialIPIndex 4
-#define InstanceSpecificationIndex 2
-#define InstructionPointerIndex 1
-#define InterpreterSourceVersion "4.13.12"
-#define InvokeCallbackSelector 53
-#define LargeContextBit 0x40000
-#define LastLinkIndex 1
-#define LiteralStart 1
-#define MaxExternalPrimitiveTableSize 4096
-#define MaxJumpBuf 32
-#define MaxPrimitiveIndex 575
-#define MessageArgumentsIndex 1
-#define MessageDictionaryIndex 1
-#define MessageLookupClassIndex 2
-#define MessageSelectorIndex 0
-#define MethodArrayIndex 1
-#define MethodCacheClass 2
-#define MethodCacheEntries 512
-#define MethodCacheEntrySize 8
-#define MethodCacheMask 0xFF8
-#define MethodCacheMethod 3
-#define MethodCacheNative 5
-#define MethodCachePrim 4
-#define MethodCachePrimFunction 6
-#define MethodCacheSelector 1
-#define MethodCacheSize 4096
-#define MethodIndex 3
-#define MillisecondClockMask 0x1FFFFFFF
-#define MyListIndex 3
-#define NextLinkIndex 0
-#define NilContext 1
-#define NilObject 0
-#define PrimErrBadArgument 3
-#define PrimErrBadIndex 4
-#define PrimErrBadNumArgs 5
-#define PrimErrNoMemory 9
-#define PrimErrTableIndex 51
-#define PrimitiveExternalCallIndex 117
-#define PriorityIndex 2
-#define ProcessListsIndex 0
-#define ProcessSignalingLowSpace 22
-#define ReceiverIndex 5
-#define RootTableRedZone 2400
-#define RootTableSize 2500
-#define SchedulerAssociation 3
-#define SelectorAboutToReturn 48
-#define SelectorCannotInterpret 34
-#define SelectorCannotReturn 21
-#define SelectorDoesNotUnderstand 20
-#define SelectorMustBeBoolean 25
-#define SelectorRunWithIn 49
-#define SelectorStart 2
-#define SemaphoresToSignalSize 500
-#define SenderIndex 0
-#define SpecialSelectors 23
-#define StackPointerIndex 2
-#define StartField 1
-#define StartObj 2
-#define SuperclassIndex 0
-#define SuspendedContextIndex 1
-#define TempFrameStart 6
-#define TheDisplay 14
-#define TheFinalizationSemaphore 41
-#define TheInterruptSemaphore 30
-#define TheLowSpaceSemaphore 17
-#define TheTimerSemaphore 29
-#define TrueObject 2
-#define TypeMask 3
-#define Upward 3
-#define ValueIndex 1
-#define XIndex 0
-#define YIndex 1
-
-/*** Function Prototypes ***/
-sqInt activateNewClosureMethod(sqInt blockClosure);
-sqInt activateNewMethod(void);
-#pragma export on
-EXPORT(sqInt) addHighPriorityTickee(void *ticker, unsigned periodms);
-EXPORT(sqInt) addSynchronousTickee(void *ticker, unsigned periodms, unsigned roundms);
-EXPORT(sqInt) addGCRoot(sqInt *varLoc);
-#pragma export off
-sqInt addNewMethodToCache(void);
-sqInt addToExternalPrimitiveTable(void (*functionAddress)(void));
-sqInt addressCouldBeObj(sqInt address);
-sqInt adjustAllOopsBy(sqInt bytesToShift);
-sqInt allYoungand(sqInt array1, sqInt array2);
-sqInt allocateChunk(sqInt byteSize);
-sqInt allocateOrRecycleContext(sqInt needsLarge);
-#pragma export on
-EXPORT(sqInt) amInVMThread(void);
-#pragma export off
-sqInt argumentCountOf(sqInt methodPointer);
-void * arrayValueOf(sqInt arrayOop);
-sqInt asciiOfCharacter(sqInt characterObj);
-sqInt balancedStackafterPrimitivewithArgs(sqInt delta, sqInt primIdx, sqInt nArgs);
-sqInt beRootIfOld(sqInt oop);
-sqInt beRootWhileForwarding(sqInt oop);
-sqInt becomewith(sqInt array1, sqInt array2);
-sqInt becomewithtwoWaycopyHash(sqInt array1, sqInt array2, sqInt twoWayFlag, sqInt copyHashFlag);
-sqInt biasToGrow(void);
-sqInt booleanValueOf(sqInt obj);
-sqInt byteSizeOf(sqInt oop);
-sqInt byteSwapByteObjectsFromto(sqInt startOop, sqInt stopAddr);
-sqInt byteSwapped(sqInt w);
-sqInt callExternalPrimitive(void (*functionID)(void));
-#pragma export on
-EXPORT(sqInt) callInterpreter(void);
-EXPORT(sqInt) callbackEnter(sqInt *callbackID);
-EXPORT(sqInt) callbackLeave(sqInt cbID);
-#pragma export off
-sqInt changeClassOfto(sqInt rcvr, sqInt argClass);
-sqInt characterForAscii(sqInt ascii);
-sqInt characterTable(void);
-sqInt checkForInterrupts(void);
-sqInt checkImageVersionFromstartingAt(sqImageFile  f, squeakFileOffsetType  imageOffset);
-sqInt checkedIntegerValueOf(sqInt intOop);
-sqInt checkedLongAt(sqInt byteAddress);
-sqInt classAlien(void);
-sqInt classArray(void);
-sqInt classBitmap(void);
-sqInt classByteArray(void);
-sqInt classCharacter(void);
-sqInt classExternalAddress(void);
-sqInt classExternalData(void);
-sqInt classExternalFunction(void);
-sqInt classExternalLibrary(void);
-sqInt classExternalStructure(void);
-sqInt classFloat(void);
-sqInt classLargeNegativeInteger(void);
-sqInt classLargePositiveInteger(void);
-sqInt classNameOfIs(sqInt aClass, char *className);
-sqInt classPoint(void);
-sqInt classSemaphore(void);
-sqInt classSmallInteger(void);
-sqInt classString(void);
-sqInt classUnsafeAlien(void);
-sqInt clone(sqInt oop);
-sqInt commonAt(sqInt stringy);
-sqInt commonAtPut(sqInt stringy);
-sqInt commonVariableatcacheIndex(sqInt rcvr, sqInt index, sqInt atIx);
-sqInt compare31or32Bitsequal(sqInt obj1, sqInt obj2);
-sqInt compilerCreateActualMessagestoringArgs(sqInt aMessage, sqInt argArray);
-sqInt compilerFlushCache(sqInt aCompiledMethod);
-sqInt compilerMapFromto(sqInt memStart, sqInt memEnd);
-sqInt compilerMark(void);
-sqInt compilerPostGC(void);
-sqInt compilerPostSnapshot(void);
-sqInt compilerPreGC(sqInt fullGCFlag);
-sqInt compilerPreSnapshot(void);
-sqInt compilerProcessChange(void);
-sqInt compilerProcessChangeto(sqInt oldProc, sqInt newProc);
-sqInt compilerTranslateMethod(void);
-sqInt containOnlyOopsand(sqInt array1, sqInt array2);
-sqInt contexthasSender(sqInt thisCntx, sqInt aContext);
-sqInt copyBits(void);
-sqInt copyBitsFromtoat(sqInt x0, sqInt x1, sqInt y);
-sqInt copyObjtoSegmentaddrstopAtsaveOopAtheaderAt(sqInt oop, sqInt segmentWordArray, sqInt lastSeg, sqInt stopAddr, sqInt oopPtr, sqInt hdrPtr);
-sqInt createActualMessageTo(sqInt aClass);
-sqInt dispatchFunctionPointer(void (*aFunctionPointer)(void));
-sqInt dispatchFunctionPointerOnin(sqInt primIdx, void (*primTable[])(void));
-sqInt displayBitsOfLeftTopRightBottom(sqInt aForm, sqInt l, sqInt t, sqInt r, sqInt b);
-sqInt displayObject(void);
-sqInt doPrimitiveDivby(sqInt rcvr, sqInt arg);
-sqInt doPrimitiveModby(sqInt rcvr, sqInt arg);
-sqInt dummyReferToProxy(void);
-#pragma export on
-EXPORT(sqInt) dumpImage(char *fileName);
-#pragma export off
-sqInt executeNewMethodFromCache(void);
-#pragma export on
-EXPORT(sqInt) extraHeaderBytes(sqInt oopOrChunk);
-#pragma export off
-sqInt failed(void);
-sqInt falseObject(void);
-void * fetchArrayofObject(sqInt fieldIndex, sqInt objectPointer);
-sqInt fetchClassOf(sqInt oop);
-sqInt fetchClassOfNonInt(sqInt oop);
-double fetchFloatofObject(sqInt fieldIndex, sqInt objectPointer);
-sqInt fetchIntegerofObject(sqInt fieldIndex, sqInt objectPointer);
-sqInt fetchLong32ofObject(sqInt fieldIndex, sqInt oop);
-sqInt fetchPointerofObject(sqInt fieldIndex, sqInt oop);
-sqInt fetchStackPointerOf(sqInt aContext);
-sqInt fetchWordLengthOf(sqInt objectPointer);
-sqInt finalizeReference(usqInt oop);
-sqInt findClassOfMethodforReceiver(sqInt meth, sqInt rcvr);
-sqInt findNewMethodInClass(sqInt class);
-sqInt findSelectorOfMethodforReceiver(sqInt meth, sqInt rcvr);
-sqInt firstAccessibleObject(void);
-char * firstFixedField(sqInt oop);
-char * firstIndexableField(sqInt oop);
-double floatArg(sqInt index);
-sqInt floatObjectOf(double  aFloat);
-double floatValueOf(sqInt oop);
-sqInt flushExternalPrimitiveOf(sqInt methodPtr);
-sqInt flushExternalPrimitives(void);
-sqInt forceInterruptCheck(void);
-sqInt fullDisplayUpdate(void);
-sqInt fullGC(void);
-sqInt fwdBlockValid(sqInt addr);
-sqInt fwdTableInit(sqInt blkSize);
-sqInt fwdTableSize(sqInt blkSize);
-sqInt getCurrentBytecode(void);
-sqInt getFullScreenFlag(void);
-sqInt getInterruptCheckCounter(void);
-sqInt getInterruptKeycode(void);
-sqInt getInterruptPending(void);
-sqInt getLongFromFileswap(sqImageFile  aFile, sqInt swapFlag);
-sqInt getNextWakeupTick(void);
-sqInt getSavedWindowSize(void);
-#pragma export on
-EXPORT(sqInt) getStackPointer(void);
-#pragma export off
-sqInt getThisSessionID(void);
-sqInt growObjectMemory(usqInt delta);
-sqInt heapMapAtWord(sqInt wordPointer);
-sqInt imageSegmentVersion(void);
-sqInt incCompBody(void);
-sqInt incCompMakeFwd(void);
-sqInt incCompMove(sqInt bytesFreed);
-sqInt includesBehaviorThatOf(sqInt aClass, sqInt aSuperclass);
-sqInt incrementalGC(void);
-sqInt initCompilerHooks(void);
-sqInt initializeImageFormatVersionIfNeeded(void);
-sqInt initializeInterpreter(sqInt bytesToShift);
-sqInt initializeMemoryFirstFree(usqInt firstFree);
-sqInt initializeObjectMemory(sqInt bytesToShift);
-sqInt installinAtCacheatstring(sqInt rcvr, sqInt *cache, sqInt atIx, sqInt stringy);
-sqInt instanceSizeOf(sqInt classObj);
-sqInt instantiateClassindexableSize(sqInt classPointer, sqInt size);
-sqInt instantiateContextsizeInBytes(sqInt classPointer, sqInt sizeInBytes);
-sqInt instantiateSmallClasssizeInBytes(sqInt classPointer, sqInt sizeInBytes);
-sqInt integerArg(sqInt index);
-sqInt integerObjectOf(sqInt value);
-sqInt integerValueOf(sqInt objectPointer);
-#pragma export on
-EXPORT(sqInt) internalIsImmutable(sqInt oop);
-EXPORT(sqInt) internalIsMutable(sqInt oop);
-#pragma export off
-sqInt interpret(void);
-sqInt ioFilenamefromStringofLengthresolveAliases(char *aCharBuffer, char *aFilenameString, sqInt filenameLength, sqInt aBoolean);
-#pragma export on
-EXPORT(usqLong) ioUTCMicroseconds(void);
-#pragma export off
-sqInt isKindOf(sqInt oop, char *className);
-sqInt isKindOfClass(sqInt oop, sqInt aClass);
-sqInt isMemberOf(sqInt oop, char *className);
-sqInt isArray(sqInt oop);
-sqInt isBigEnder(void);
-sqInt isBytes(sqInt oop);
-sqInt isExcessiveAllocationRequestshift(sqInt size, sqInt bits);
-sqInt isFloatObject(sqInt oop);
-sqInt isHandlerMarked(sqInt aContext);
-sqInt isInMemory(sqInt address);
-sqInt isIndexable(sqInt oop);
-sqInt isIntegerObject(sqInt objectPointer);
-sqInt isIntegerValue(sqInt intValue);
-sqInt isNegativeIntegerValueOf(sqInt oop);
-sqInt isPointers(sqInt oop);
-sqInt isWeak(sqInt oop);
-sqInt isWords(sqInt oop);
-sqInt isWordsOrBytes(sqInt oop);
-sqInt isWordsOrBytesNonInt(sqInt oop);
-sqInt isYoung(sqInt oop);
-sqInt lastPointerOf(sqInt oop);
-sqInt lengthOf(sqInt oop);
-sqInt literalofMethod(sqInt offset, sqInt methodPointer);
-sqInt literalCountOf(sqInt methodPointer);
-sqInt literalCountOfHeader(sqInt headerPointer);
-sqInt loadBitBltFrom(sqInt bb);
-sqInt loadInitialContext(void);
-sqInt lookupInMethodCacheSelclass(sqInt selector, sqInt class);
-sqInt lookupMethodInClass(sqInt class);
-sqInt lookupMethodInDictionary(sqInt dictionary);
-sqInt lookupMethodNoMNUEtcInClass(sqInt class);
-sqInt lowestFreeAfter(sqInt chunk);
-sqInt magnitude64BitIntegerForneg(usqLong magnitude, sqInt isNegative);
-usqLong magnitude64BitValueOf(sqInt oop);
-sqInt makePointwithxValueyValue(sqInt xValue, sqInt yValue);
-sqInt mapPointersInObjectsFromto(sqInt memStart, sqInt memEnd);
-sqInt markAndTrace(sqInt oop);
-sqInt markAndTraceInterpreterOops(sqInt fullGCFlag);
-sqInt markPhase(void);
-sqInt methodArg(sqInt index);
-sqInt methodArgumentCount(void);
-sqInt methodPrimitiveIndex(void);
-sqInt methodReturnValue(sqInt oop);
-#pragma export on
-EXPORT(sqInt) moduleUnloaded(char *aModuleName);
-#pragma export off
-sqInt nilObject(void);
-sqInt nonWeakFieldsOf(sqInt oop);
-sqInt normalizeFloatOrderingInImage(void);
-sqInt noteAsRootheaderLoc(sqInt oop, sqInt headerLoc);
-sqInt nullCompilerHook(void);
-sqInt objectAfter(sqInt oop);
-sqInt objectArg(sqInt index);
-sqInt obsoleteDontUseThisFetchWordofObject(sqInt fieldIndex, sqInt oop);
-sqInt okayFields(sqInt oop);
-sqInt okayOop(sqInt signedOop);
-sqInt oopisGreaterThan(sqInt anOop, sqInt otherOop);
-sqInt oopisGreaterThanOrEqualTo(sqInt anOop, sqInt otherOop);
-sqInt oopisLessThan(sqInt anOop, sqInt otherOop);
-sqInt oopHasAcceptableClass(sqInt signedOop);
-sqInt oopHasOkayClass(sqInt signedOop);
-sqInt pop(sqInt nItems);
-sqInt popthenPush(sqInt nItems, sqInt oop);
-double popFloat(void);
-sqInt popRemappableOop(void);
-sqInt popStack(void);
-sqInt positive32BitIntegerFor(sqInt integerValue);
-sqInt positive32BitValueOf(sqInt oop);
-sqInt positive64BitIntegerFor(sqLong integerValue);
-sqLong positive64BitValueOf(sqInt oop);
-sqInt possibleRootStoreIntovalue(sqInt oop, sqInt valueObj);
-sqInt postGCAction(void);
-sqInt prepareForwardingTableForBecomingwithtwoWay(sqInt array1, sqInt array2, sqInt twoWayFlag);
-sqInt primitiveAdd(void);
-#pragma export on
-EXPORT(sqInt) primitiveAddLargeIntegers(void);
-#pragma export off
-sqInt primitiveAdoptInstance(void);
-#pragma export on
-EXPORT(sqInt) primitiveAllObjects(void);
-#pragma export off
-sqInt primitiveArctan(void);
-sqInt primitiveArrayBecome(void);
-sqInt primitiveArrayBecomeOneWay(void);
-sqInt primitiveArrayBecomeOneWayCopyHash(void);
-sqInt primitiveAsFloat(void);
-void primitiveAsOop(void);
-sqInt primitiveAt(void);
-sqInt primitiveAtPut(void);
-sqInt primitiveBeCursor(void);
-sqInt primitiveBeDisplay(void);
-sqInt primitiveBeep(void);
-sqInt primitiveBehaviorHash(void);
-sqInt primitiveBitAnd(void);
-#pragma export on
-EXPORT(sqInt) primitiveBitAndLargeIntegers(void);
-#pragma export off
-sqInt primitiveBitOr(void);
-#pragma export on
-EXPORT(sqInt) primitiveBitOrLargeIntegers(void);
-#pragma export off
-sqInt primitiveBitShift(void);
-#pragma export on
-EXPORT(sqInt) primitiveBitShiftLargeIntegers(void);
-#pragma export off

@@ Diff output truncated at 50000 characters. @@
Reply | Threaded
Open this post in threaded view
|

Re: [commit][3318] JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

Tobias Pape


On 03.05.2015, at 23:57, [hidden email] wrote:

> */
> -    @autoreleasepool {
>     sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic dir_GetMacFileTypeAndCreator: filename
>                                                                                           fileNameSize: filenameSize
>                                                                                                  fType: fType
>                                                                                               fCreator: fCreator];
> return status;
> -    }
> }

Erm, why are these removed?
Best regards
        -Tobias
Reply | Threaded
Open this post in threaded view
|

Re: [commit][3318] JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

johnmci
 
The dir_GetMacFileTypeAndCreator is not being removed
The @autoreleasepool  is being removed as the VM was converted to ARC and having an auto-release pool to ensure memory is freed isn't required for the file api wrappers in sqSqueakFileDirectoryInterface as the reference counting GC logic is disposing of the temporary NSStrings as part of cleanup when they go out of scope. 

On Sun, May 3, 2015 at 3:12 PM, Tobias Pape <[hidden email]> wrote:


On 03.05.2015, at 23:57, [hidden email] wrote:

>        */
> -    @autoreleasepool {
>     sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic dir_GetMacFileTypeAndCreator: filename
>                                                                                           fileNameSize: filenameSize
>                                                                                                  fType: fType
>                                                                                               fCreator: fCreator];
>       return status;
> -    }
> }

Erm, why are these removed?
Best regards
        -Tobias



--
===========================================================================
John M. McIntosh <[hidden email]https://www.linkedin.com/in/smalltalk
===========================================================================
Reply | Threaded
Open this post in threaded view
|

Re: [commit][3318] JMM - Use gnuified vm, fixes for various compiler complaints about integer cast for 64 bit, adjustments to compiler schemes to build 32/32 + 64/64 apps, update copyright dates.

Tobias Pape


On 04.05.2015, at 00:32, John McIntosh <[hidden email]> wrote:

> The dir_GetMacFileTypeAndCreator is not being removed
> The @autoreleasepool  is being removed as the VM was converted to ARC and having an auto-release pool to ensure memory is freed isn't required for the file api wrappers in sqSqueakFileDirectoryInterface as the reference counting GC logic is disposing of the temporary NSStrings as part of cleanup when they go out of scope.

Ok, I wasn't aware the @autoreleasepool's are superfluous
in this case.
Best regards
        -Tobias

>
> On Sun, May 3, 2015 at 3:12 PM, Tobias Pape <[hidden email]> wrote:
>
>
> On 03.05.2015, at 23:57, [hidden email] wrote:
>
> >        */
> > -    @autoreleasepool {
> >     sqInt status = [gDelegateApp.squeakApplication.fileDirectoryLogic dir_GetMacFileTypeAndCreator: filename
> >                                                                                           fileNameSize: filenameSize
> >                                                                                                  fType: fType
> >                                                                                               fCreator: fCreator];
> >       return status;
> > -    }
> > }