Index: coregrind/vg_main.c
===================================================================
RCS file: /cvsroot/valgrind/valgrind/coregrind/vg_main.c,v
retrieving revision 1.55
diff -u -r1.55 vg_main.c
--- coregrind/vg_main.c	5 Oct 2002 15:49:27 -0000	1.55
+++ coregrind/vg_main.c	10 Oct 2002 19:17:36 -0000
@@ -1212,7 +1212,14 @@
    SK_(pre_clo_init) ( & VG_(details), & VG_(needs), & VG_(track_events) );
    sanity_check_needs();
 
-   /* Set up baseBlock offsets and copy the saved machine's state into it. */
+   /* Process Valgrind's command-line opts (from env var VG_OPTS). */
+   process_cmd_line_options();
+
+   SK_(post_clo_init)();
+
+   /* Set up baseBlock offsets and copy the saved machine's state into
+      it. Do it after SK_(post_clo_init) in case the skin registered
+      some baseBlock helpers there. */
    vg_init_baseBlock();
    VG_(copy_m_state_static_to_baseBlock)();
    /* Pretend that the root thread has a completely empty LDT to start
@@ -1220,9 +1227,6 @@
    VG_(baseBlock)[VGOFF_(ldt)] = (UInt)NULL;
    vg_init_shadow_regs();
 
-   /* Process Valgrind's command-line opts (from env var VG_OPTS). */
-   process_cmd_line_options();
-
    /* Hook to delay things long enough so we can get the pid and
       attach GDB in another shell. */
    if (0) { 
@@ -1246,9 +1250,6 @@
 
    /* Start calibration of our RDTSC-based clock. */
    VG_(start_rdtsc_calibration)();
-
-   /* Do this here just to give rdtsc calibration more time */
-   SK_(post_clo_init)();
 
    /* Must come after SK_(init) so memory handler accompaniments (eg.
     * shadow memory) can be setup ok */
