[webkit-dev] Stack Alignment error in LLINT

2015-07-27 Thread Rodney Dowdall
Hello I am seeing a SIGTRAP generated in the LLINT code when I try and load up a page. It happens as soon as the page tries to execute JavaScript. The target is an 32 bit x86 machine. The SIGTRAP appears to happen when it is checking the stack alignment. I have tried compiling the code

Re: [webkit-dev] Stack Alignment error in LLINT

2015-07-27 Thread Rodney Dowdall
Thanks for the response Michael. Where does the code that does the padding live? It may be that I need to add something in there. I can try changing what the stack alignment should be, but from what I understand the QNX OS should align to 16. Maybe it is the exceptions that are causing the

Re: [webkit-dev] Stack Alignment error in LLINT

2015-07-27 Thread Michael Saboff
Rodney, JavaScriptCore assumes that the stack is 16 byte aligned. This may be more restrictive than some OS / ABIs, but there is code to pad appropriately for some platforms. You didn’t say what OS you are running on, but maybe there needs to be a code added for your OS. Turning on C++

Re: [webkit-dev] Stack Alignment error in LLINT

2015-07-27 Thread Filip Pizło
We generally assume that calls into JavaScriptCore are made on an aligned stack. So, to my knowledge, our code does not usually do dynamic stack realignment. You should check the vmEntryToJavascript thunk - which gets called when you make a call into JS from native code - to see if it does

Re: [webkit-dev] Stack Alignment error in LLINT

2015-07-27 Thread Michael Saboff
Rodney, The “align the stack” code for 32 bit platforms is found in Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm (http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm) beginning at line 218. There isn’t an if / elsif for Linux or QNX. This