<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto">Hi Edwin,<div><br></div><div>    VM_LABEL exists to plant a global label in the interpreter at various bytecodes so that in a vm profiler one can see where the time is spent.  Since you’re probably not interested in doing that you can simply change the makefiles to define VM_LABEL as zero, eg ‘-D VM_LABEL(foo)=0’ or -D VM_LABEL\(foo\)=0 (you may need to double the backslashes you pass the escape through make to the compiler invocation).<br><br><div dir="ltr"><span style="background-color: rgba(255, 255, 255, 0);">_,,,^..^,,,_ (phone)</span></div><div dir="ltr"><br><blockquote type="cite">On Apr 8, 2020, at 3:35 AM, Edwin Ancaer <eancaer@gmail.com> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><div dir="ltr"><div>Tobias, <br></div><div><br></div><div>I recompiled the stack vm with clang60, on FreeBSD12 but I get the same problem with the definition of the VM_LABEL:. see printout below. <br></div><div>I ca compile this with gcc however.</div><div><br></div><div>But then it seems the changes for iconv are not in the stack vm yet. Is that correct?</div><div><br></div><div>As for ALSA  or polse or sndio, I think you should just take what works.  <br></div><div><br></div><div>Please note that I have not the intention of being pushy, I realise you spend some of your free time doing this, so that I can enjoy Squeak on FreeBSD.</div><div>Just ignore if it gets too much.  <br></div><div><br></div><div>Clang60 is version 6.0.1 here: <br></div><div><span style="font-family:monospace">$ clang60 -v<br>clang version 6.0.1 (tags/RELEASE_601/final)<br>Target: x86_64-portbld-freebsd12.0<br>Thread model: posix<br>InstalledDir: /usr/local/llvm60/bin</span><br></div><div><br></div><div><span style="font-family:monospace">clang60 -g -O1</span> -<span style="font-family:monospace">DNDEBUG -DDEBUGVM=0 -msse2 -Wall -pthread -DLSB_FIRST=1 -m64 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable  -DHAVE_CONFIG_H  -DSQUEAK_BUILTIN_PLUGIN  -I/home/edwin/Smalltalk5/opensmalltalk-vm/build.linux64x64/squeak.stack.spur/build -I/home/edwin/Smalltalk5/opensmalltalk-vm/build.linux64x64/squeak.stack.spur/build -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/unix/vm -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/Cross/vm -I/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/Cross/vm -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/unix/vm -I/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm   -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/Cross/plugins/FilePlugin  -I/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/unix/plugins/B3DAcceleratorPlugin -m64 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable   -c -o gcc3x-interp.o /home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm/gcc3x-interp.c<br>/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm/gcc3x-interp.c:38695:64: warning: format specifies type 'char *' but the argument has type 'sqInt' (aka 'long') [-Wformat]<br>        printf("\nClass %s does not have the required class index\n", className);<br>                        ~~                                            ^~~~~~~~~<br>                        %ld<br>/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm/gcc3x-interp.c:49593:108: warning: passing 'usqInt *' (aka 'unsigned long *') to parameter of type 'sqInt *' (aka 'long *') converts between pointers to integer types w</span>ith different sign<span style="font-family:monospace"> [-Wpointer-sign]<br>        segAddress = sqAllocateMemorySegmentOfSizeAboveAllocatedSizeInto(ammount, firstGapOfSizeAtLeast(ammount), (&allocatedSize));<br></span></div><div><span style="font-family:monospace">...</span></div><div>...</div><div>...</div><div></div><div><span style="font-family:monospace">                              ^<br>/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm/gcc3x-interp.c:2530:5: error: invalid symbol redefinition<br>                                VM_LABEL(pushReceiverVariableBytecode);<br>                                ^<br>/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/unix/vm/sqPlatformSpecific.h:110:49: note: expanded from macro 'VM_LABEL'<br>#       define VM_LABEL(foo) asm("\n.globl L" #foo "\nL" #foo ":")<br>                                                      ^<br><inline asm>:3:1: note: instantiated into assembly here<br>LpushReceiverVariableBytecode:<br>^<br></span>/home/edwin/Smalltalk5/opensmalltalk-vm/spurstack64src/vm/gcc3x-interp.c:2544:5: error: invalid symbol redefinition<br>                                VM_LABEL(pushReceiverVariableBytecode1);<br>                                ^<br><span style="font-family:monospace">/home/edwin/Smalltalk5/opensmalltalk-vm/platforms/unix/vm/sqPlatformSpecific.h:110:49: note: expanded from macro 'VM_LABEL'<br>#       define VM_LABEL(foo) asm("\n.globl L" #foo "\nL" #foo ":")<br>                                                      ^<br><inline asm>:3:1: note: instantiated into assembly here</span><br><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Op wo 8 apr. 2020 om 10:55 schreef Tobias Pape <<a href="mailto:Das.Linux@gmx.de">Das.Linux@gmx.de</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Subbu<br>
> On 08.04.2020, at 10:19, K K Subbu <<a href="mailto:kksubbu.ml@gmail.com" target="_blank">kksubbu.ml@gmail.com</a>> wrote:<br>
> <br>
> On 08/04/20 3:13 AM, Tobias Pape wrote:<br>
>> I have looked at the stackvm issue.<br>
>> On FreeBSD 11/clang 6, this does not occur. What clang version do you have?<br>
>> Also, I don't think we need to bother with alsa too much.<br>
>> OSS should work, the rest_is_  work:)<br>
> <br>
> Tobias,<br>
> <br>
> Please make pulse the default audio server. It has wrappers (padsp) to handle legacy apps using for ALSA/OSS.<br>
> <br>
> David Stes confirmed earlier that pulse audio works fine on his Solaris port and provided the patches. Squeak VM does not work out of the box on my Ubuntu 16.04 (64b). I have to patch squeak.sh to use -vm-audio-pulse to get sound to work.<br>
<br>
This is a distinct thing.<br>
My comments are about compilation problems of Alsa on FreeBSD.<br>
I see that pulse is available in FreeBSD ports, but with a lot of dependencies, and<br>
I do not think that at the moment it is a good idea to mingle with that.<br>
<br>
For OpenBSD we have sndio, and if that also works for FreeBSD, at the moment I would go for that.<br>
<br>
Apart from that, sure, Pulse seems a good option…<br>
<br>
Best regards<br>
        -Tobias<br>
<br>
<br>
</blockquote></div>
<span></span><br></div></blockquote></div></body></html>