[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code
From: |
Kirill Kononenko |
Subject: |
Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE) |
Date: |
Tue, 7 Apr 2009 10:31:58 +0400 |
Let me know if there are any other segfaults or other issues on x86_64/amd64.
Thanks,
Kirill
2009/4/7 Kirill Kononenko <address@hidden>:
> Everyone who wants to add his or her own code with patches to the svn
> repository, is highly welcomed. Also all suggestions, thoughts and
> comments are very welcomed. So libJIT can become even more and more
> useful for support of JIT compilation.
>
>
> Thanks,
> Kirill
>
> 2009/4/7 Kirill Kononenko <address@hidden>:
>> For other architectures. It is -very easy- to add support to use both
>> the old code generator and the data-flow and control-flow based
>> optimisations that are already used in the new code generator. When
>> compilation and run for other architectures than IA-32 stabilizes,
>> such support of other optimization level for different architectures
>> can be added in one-two days. These are basically only a couple of
>> extra lines with #defines #if def mostly.
>>
>>
>> Thanks,
>> Kirill
>>
>> 2009/4/7 Kirill Kononenko <address@hidden>:
>>> Because of very limited time I have not been able to test my code on
>>> different architectures than IA-32, and only on Debian even. So
>>> everyone who wants to submit patches, is either already in the list
>>> with open write access, or let me know if you want one.
>>>
>>>
>>> Thanks,
>>> Kirill
>>>
>>>
>>> 2009/4/7 Kirill Kononenko <address@hidden>:
>>>> Hi Boris,
>>>>
>>>>
>>>> Thanks a lot for the patch. I have also fixed a bug I found in
>>>> CALL_FINALLY. You can freely submit any of your code to the svn
>>>> repository. In case instruction selection for the new code generator
>>>> has not been yet added it should fall back to the old register
>>>> allocator, like the old one does with falling back to the interpreter.
>>>> Do you think you can fix this issue when you have a couple of free
>>>> minutes? Feel free to submit any of your code to the svn. See the web
>>>> page on how to check in to the repository (svn commit etc). Please let
>>>> me know if there any issues with svn access.
>>>>
>>>>
>>>> Thanks,
>>>> Kirill
>>>>
>>>> 2009/4/7 Boris Manojlovic <address@hidden>:
>>>>> Hello,
>>>>>
>>>>> this patch is NOT serious patch as it is just cosmetics to be able
>>>>> compiling
>>>>> it on x86_64 but anyway it compiles :) and
>>>>> it of course seg fault under dpas test cases..
>>>>>
>>>>>
>>>>> small part of debug....
>>>>> ---------------------------------------------------------------------------------------------------------
>>>>> $ gdb
>>>>> /home/steki/libjit-linear-scan-register-allocator-read-only/libjit/dpas/.libs/lt-dpas
>>>>> GNU gdb (GDB; openSUSE 11.1) 6.8.50.20081120-cvs
>>>>> Copyright (C) 2008 Free Software Foundation, Inc.
>>>>> License GPLv3+: GNU GPL version 3 or later
>>>>> <http://gnu.org/licenses/gpl.html>
>>>>> This is free software: you are free to change and redistribute it.
>>>>> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
>>>>> and "show warranty" for details.
>>>>> This GDB was configured as "x86_64-suse-linux".
>>>>> For bug reporting instructions, please see:
>>>>> <http://bugs.opensuse.org/>...
>>>>> (gdb) set args loop.pas
>>>>> (gdb) run
>>>>> Starting program:
>>>>> /builder/libjit-linear-scan-register-allocator-read-only/libjit/dpas/.libs/lt-dpas
>>>>> loop.pas
>>>>> [Thread debugging using libthread_db enabled]
>>>>>
>>>>> Program received signal SIGSEGV, Segmentation fault.
>>>>> 0x00007ffff7b84e18 in jit_insn_call_intrinsic (func=0x6214c0,
>>>>> name=0x7ffff7bc8bf5 "jit_int_to_ushort", intrinsic_func=0x7ffff7b8bb60,
>>>>> descriptor=0x7ffff7dda4e0, arg1=0x621988,
>>>>> arg2=0x0) at jit-insn.c:6250
>>>>> 6250 {
>>>>> (gdb) up
>>>>> #1 0x00007ffff7b855ff in jit_insn_convert (func=0x6214c0, value=0x621988,
>>>>> type=<value optimized out>, overflow_check=0) at jit-insn.c:5004
>>>>> 5004 value = apply_unary_conversion
>>>>> (gdb)
>>>>> #2 0x00007ffff7b84e61 in jit_insn_call_intrinsic (func=0x6214c0,
>>>>> name=0x7ffff7bcba40 "\001", intrinsic_func=0x7ffff7bcba80,
>>>>> descriptor=0x7ffff7dde5f0, arg1=0x621988, arg2=0x0)
>>>>> at jit-insn.c:6272
>>>>> 6272 arg1 = jit_insn_convert(func, arg1, descriptor->arg1_type,
>>>>> 0);
>>>>> (gdb)
>>>>> #3 0x00007ffff7b855ff in jit_insn_convert (func=0x6214c0, value=0x621988,
>>>>> type=<value optimized out>, overflow_check=0) at jit-insn.c:5004
>>>>> 5004 value = apply_unary_conversion
>>>>> (gdb)
>>>>> #4 0x00007ffff7b84e61 in jit_insn_call_intrinsic (func=0x6214c0,
>>>>> name=0x7ffff7bc8bf5 "jit_int_to_ushort", intrinsic_func=0x7ffff7b8bb60,
>>>>> descriptor=0x7ffff7dda4e0, arg1=0x621988,
>>>>> arg2=0x0) at jit-insn.c:6272
>>>>> 6272 arg1 = jit_insn_convert(func, arg1, descriptor->arg1_type,
>>>>> 0);
>>>>> (gdb)
>>>>> ---------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>> On Sat, Apr 4, 2009 at 3:55 PM, Kirill Kononenko <address@hidden>
>>>>> wrote:
>>>>>>
>>>>>> URL:
>>>>>> <http://savannah.gnu.org/patch/?6799>
>>>>>>
>>>>>> Summary: libJIT 1.2.5 + / 1.2 1/2 Release (code name:
>>>>>> libJIT-ON-TESTOSTERONE)
>>>>>> Project: DotGNU Portable.NET
>>>>>> Submitted by: krokas
>>>>>> Submitted on: Sat 04 Apr 2009 01:55:14 PM GMT
>>>>>> Category: None
>>>>>> Priority: 5 - Normal
>>>>>> Status: None
>>>>>> Privacy: Public
>>>>>> Assigned to: None
>>>>>> Originator Email:
>>>>>> Open/Closed: Open
>>>>>> Discussion Lock: Any
>>>>>>
>>>>>> _______________________________________________________
>>>>>>
>>>>>> Details:
>>>>>>
>>>>>> * Add optimization levels for IA-32 from 0 to 4
>>>>>> (jit_set_optimization_level)
>>>>>> * Add a new specialized jit_abi_internal
>>>>>> * Add brand new optimized object code generator (level 1, 2, 3, 4
>>>>>> of
>>>>>> optimization)
>>>>>> * Various low-level machine dependent optimizations and tricks
>>>>>> * Aggressive optimization of division by integer constants as
>>>>>> by Torbjorn Granlund and Peter L. Montgomery in "Division By
>>>>>> Invariant
>>>>>> Integers using Multiplication"
>>>>>> divcnst-pldi94.pdf
>>>>>> * Add primitive code generators for MMX/Streaming SIMD
>>>>>> Extensions/SSE/SSE2/SSE3 and others
>>>>>> * Use SIMD SSE/SSE2/SSE3 for floating point values and operations
>>>>>> (level 1,
>>>>>> 2, 3, 4 of optimization\\)
>>>>>> * Data-flow and control-flow based analysis (level 1, 2, 3, 4 of
>>>>>> optimization)
>>>>>> * Fast liveness analysis (level 2 of optimization)
>>>>>> * Dead-code elimination (level 4 of optimization)
>>>>>> * Full liveness analysis (level 3, 4 of optimization)
>>>>>> * Linear scan register allocator algorithm (level 2)
>>>>>> * Bin packing register allocator algorithm (level 3, 4)
>>>>>> * Tested on DotGNU Portable.NET Common Language Runtime
>>>>>> / a Microsoft Common Intermediate Language Virtual Machine
>>>>>>
>>>>>>
>>>>>> Download is at:
>>>>>>
>>>>>>
>>>>>> http://libjit-linear-scan-register-allocator.googlecode.com/files/libjit-0.1.2.5%2B.tar.gz
>>>>>>
>>>>>> See also:
>>>>>>
>>>>>> http://code.google.com/p/libjit-linear-scan-register-allocator
>>>>>> jit-cil.net
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________________
>>>>>>
>>>>>> Reply to this item at:
>>>>>>
>>>>>> <http://savannah.gnu.org/patch/?6799>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Message sent via/by Savannah
>>>>>> http://savannah.gnu.org/
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Dotgnu-pnet mailing list
>>>>>> address@hidden
>>>>>> http://lists.gnu.org/mailman/listinfo/dotgnu-pnet
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> "Only two things are infinite, the universe and human stupidity, and I'm
>>>>> not
>>>>> sure about the former."-Albert Einstein
>>>>>
>>>>> _______________________________________________
>>>>> Dotgnu-pnet mailing list
>>>>> address@hidden
>>>>> http://lists.gnu.org/mailman/listinfo/dotgnu-pnet
>>>>>
>>>>>
>>>>
>>>
>>
>
- [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/04
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Boris Manojlovic, 2009/04/06
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE),
Kirill Kononenko <=
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07
- Re: [Dotgnu-pnet] [patch #6799] libJIT 1.2.5 + / 1.2 1/2 Release (code name: libJIT-ON-TESTOSTERONE), Kirill Kononenko, 2009/04/07