AngelScript 1.9.2a FINAL (2004/10/12)

Started by
11 comments, last by WitchLord 19 years, 6 months ago
Yes, copy constructors are working as well. In fact any type of arguments are working.

It's really cool that you wrote the VM in assembler. I was going to do that myself, in order to see if I could increase performance. I'll do some tests with your assembly code to see how the performance changes. I suspect it might be as much as 2 times faster, which would be a very good thing.

As I said before, AngelScript will have JIT compilation. But it shouldn't just take the function's bytecode and convert everything to native code. Instead it should break up the bytecode in smaller sequences and convert each of those into native code. The sequences should be laid out in such a way that context->Suspend(), context->Abort() and context->SetException() still work. I still have to analyze exactly how that should be done. In the future I also plan to implement coroutines, and the JIT compilation mustn't disallow that either.

If you want to write a JIT compiler that simply converts everything that would be ok. I could take that code and redesign it to follow my goals. That would help me greatly as I currently don't know exactly how to go about doing JIT compilation. I haven't had the time to look closer at SoftWire, or possibly my own internal implementation.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Advertisement
haha - I'm sure you'll love all my programmer art in KO :D Watch out for the key bindings though, almost everyone gets confused when they first load it up and try to use WSAD and the mouse - check the manual for how to play :P
I've collected all the bug fixes found for 1.10.0 and applied them to version 1.9.2a. The bug fixes are:

- bug fix: Subtraction was optimized as if it was associative (thanks Lennart Denninger)
- bug fix: SetArguments() failed for script functions that returns registered object types by value. (thanks Thomas Suter)
- bug fix: The application would crash if an exception was raised in ExecuteString() (thanks Joe "Desdemona" Wright)
- bug fix: GetFunctionName() and GetFunctionDeclaration() now works for the ExecuteString() function id as well.
- bug fix: The compiler didn't warn when passing uninitialized variables to function parameters (thanks Alain "abrken" Bridel)
- bug fix: Constructors with parameters could cause assertion failure in GenerateExceptionHandler(). (thanks Alain "abrken" Bridel)

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

This topic is closed to new replies.

Advertisement