[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] branch master updated (215617c -> ce91698)
From: |
Andy Wingo |
Subject: |
[Guile-commits] branch master updated (215617c -> ce91698) |
Date: |
Tue, 18 Sep 2018 03:53:04 -0400 (EDT) |
wingo pushed a change to branch master
in repository guile.
from 215617c Fix R6RS call-with-{input,output}-file to open textual
ports.
adds 3b4c061 initial import
adds a72bbf2 add .gitignore
adds ba5044a big merge
adds bee3ed0 fix for out-of-srcdir build
adds 50a74cf use autoheader like every other package in this world
adds f8dfee6 fix ppc tests
adds 32abbe4 fix testfp to pass on ppc
adds 7101c65 fixes to sparc floating point
adds d28b591 add autotools-generated files
adds 8bf8476 add more autotools-generated files
adds c0bff90 include sys/mman.h under Linux/i386
adds d36aa43 remove unused variable.
adds 7ce057e add JC/JNC
adds 33bc19d update FSF address
adds ca858a5 fix heading in ppc/fp.h and sparc/fp.h
adds 4dc7a6e Fix comments in config.h.in git-archimport-id:
address@hidden/lightning--stable--1.2--patch-18
adds 9b5e364 fix PPC jit_ldxi_* with big displacement
adds 2c42ac6 don't use __func__ nor __FUNCTION__ if not compiling with
GNU C.
adds 0c06836 fix mprotect for i386
adds 50b6e40 fix PPC modi
adds e193b09 clarify bundling documentation and improve autoconf macro
adds 4e40815 one more tweak to fix distribution
adds f2cae06 fix `make dist' bug and prepare for releasing 1.2a
adds 2c1b6b9 bump version, add ldxi test case
adds 65f4527 upgrade to autoconf 2.60
adds d94eae6 fix i386 syntax error
adds 065bc52 Fix assertion failures in i386 movs and movz opcodes
adds 1f7feaf first merge of x86-64 backend and related configury
changes
adds 147efb8 cherrypick from ludovic courtes
adds e2cb4af added ret test and clarified JIT_RET documentation
adds e700058 prepare for automatic variables support
adds 54c573d fix powerpc jit_bms
adds 4290adb add jit_allocai for SPARC
adds be415cc finish jit_allocai implementation
adds 82d90f4 remove pushr/popr from testsuite
adds f748b3c update manual for jit_allocai
adds 197d20a fix x86-64 builds
adds 24794b0 add JIT_NEED_PUSH_POP and merge correct implementation of
push/pop for SPARC
adds 76e49b1 merge 64-bit cleanliness changes from mzscheme
adds 2534af6 checkin rewrite of i386 assembler
adds c1725c9 x86-64 now passes test suite
adds b34aa5a add an underscore to macros without a parameter [x86]
adds bdbb8ff give credit to whom credit is due
adds 3a04a40 merge some bugfixes, give right meaning to jit_retval_[fd]
adds 58c4dce add floating-point for x86-64
adds 67d0c9a merge from ludovic
adds 36a3ae9 refine ludovic's doc patch
adds 19f163b use CVTT instruction, fix lightning/Makefile.am
adds b07a8d4 add clean-local target to lightning/Makefile.am
adds 4ffa292 fix imprecisions in the ChangeLog
adds 1551f5a switch to GPLv3
adds d0d493b improve set* encoding for i386, add testcase
adds f4500a8 fix -I flags for opcode subdirectory
adds 329b8a8 add 3to2 test and fix bug
adds 0f828ae add Matthew Flatt to THANKS file
adds 950b2ce fix i386 floating-point sub(a,0,a)
adds 07379b8 don't truncate function pointers on amd64
adds 889d7fb use CALLsr, not CALLLsr
adds f47b23a add --with-lightning-prefix option to lightning.m4
adds 9f2179f don't use _VOID symbol, reserved by newlib (cygwin)
adds 3b4343e avoid redefinition of _r1
adds a369fa1 commit source files for separate using/porting manuals
adds d369edf Fix stxr_c(_EAX, _EBX, _ESI).
adds 15a23d2 avoid "value computed is not used" in jit_allocai
adds ec2d8b3 fix some problems (not all) with lightningize
adds 3a19952 warning patrol (allocai.c, ppc)
adds ef5a3ab add underscores around __unused__ attribute
adds 1598681 cast memory address to long for JCCim
adds ee99e52 implement long mul/div/mod for x86-64
adds 91cfad4 add _s32P
adds 90e08b1 add missing x86-64 memory operations
adds 9a188c1 misc. x86-64 bugfixes
adds 00f73f1 add LEAQmr for x86-64
adds f4bf06a add long boolean operations for x86-64
adds 1014c9b fix uses of jit_qop_ with 4 parameters
adds 4865ed3 fix several load/store patterns for x86-64.
adds beb5fa1 add .gitattributes file
adds 5ab8cdd avoid CRLF issues on mingw
adds 1e90006 fix jit_replace8 for case when one of the operands is
_EAX.
adds 4bc1260 fix C++ incompatibility in i386 back-end
adds e346195 fix stack alignment for Apple 32-bit ABI
adds ef7eb77 use MOVLir directly to implement i386 32-bit jit_movi_p
adds 66aef1c detect 32-/64-bit variant of i386 back-end at include
time (not configure time)
adds 2409054 move x86-64 JIT_V1/JIT_V2 in R12/R13
adds 297ed20 add (void) casts for C++ compatibility
adds 0b67637 fix x86-64 jit_movi_l (x, 0) and 16-byte stack alignment
in the prolog
adds 6ee7c12 rewrite x86-64 argument passing to support up to 6
arguments
adds 8b2f055 move JIT_R1/JIT_R2 to R10/R11 for the x86_64 backend
adds aa56a6b fix _rN vs. _rR
adds 66c8a68 fix IMULQir and IMULQirr
adds b3817a1 fix miscellaneous PPC-32 back-end bugs
adds da92a86 fix installation bug
adds f87b2f6 subtract 1 from the final byte being flushed in PPC
jit_flush_code
adds a76f19c fix problems with i386 32-bit floating point branches
adds d671ec7 another fix to jit_fp_btest
adds e6c352b fix blunder in operand order (i386)
adds 7179d22 fix x86 shifts
adds ef7d11d always set and replace lightning_frag
adds 21ece8c always set and replace lightning_frag
adds 2ecf6a2 fix jit_movbrm in the i386 backend
adds 128ad6a fix i386 jit_replace and x86_64 jit_movi_f
adds 5ea118e add ldst test
adds 5cef649 fix two bugs in load/store for i386
adds ceaf1b0 fix jit_extr_f_d and jit_extr_d_f for x86-64
adds 64ccd05 fix 64-bit load with sign extension
adds e19b41c ldst test update
adds 7e19a3d fix -D_ASM_SAFETY compilation of beqr_d and bne_d
adds 688e75a fix x86_64 jit_bner_{f,d}
adds 9564132 more fixes to fp branches
adds fb86d49 Change jit_getarg_{c,uc,s,us,i,ui} to extr_l to sign
extend on 64 bits.
adds adc42ad Define extra SSE2 xmmN registers and set JIT_FPTMP to the
topmost one.
adds 58043d7 Add safety check on number of integer and float arguments
on x86_64.
adds 3eb42b4 Change JIT_REXTMP, JIT_R, JIT_V to use 64-bit registers
adds ec36c13 Change JIT_REXTMP to not clobber 6th argument.
adds 100fbd1 Change JIT_FPR_NUM to 7 to prevent clobber of JIT_FPR(7)
adds d04cfb0 Change jit_finish to work with varargs functions in
x86_64.
adds fe9f114 Implement x86_64 support for multiple integer and float
arguments.
adds 67e1051 Account stack alignment on jit functions with odd number
of arguments.
adds d4a2a1b Correct branches and several ALU operations with 64
immediates
adds 8665ce1 Change _ASM_SAFETY register width check to accept valid
alternate values.
adds 7b330c8 Define some extra fp-common macros when sizeof(long) ==
sizeof(int).
adds 3749bc7 Correct ALU add and sub operations with 64 bit immediate
operands.
adds d2239c2 Revert change aliasing jit_movi_p to jit_movi_ul.
adds e98ff58 Also reset alloca_slack after jit_prolog in i386.
adds 0469f16 fix multiplication on x86_64
adds 7d3321d Cleanup on preparation for lightning rework.
adds 75d99be Extra cleanup before update to new codebase.
adds 7a1c455 Big merge with new lightning semantics aiming for
lightning 2.0.
adds cb6a2c5 Remove previous macro files as they are no longer used.
adds 22cc2ad Add make rule to build test case dependencies.
adds 51b2cee Add proper make clean rule to the check subdir.
adds b7c8db4 Add extra files implementing different jit backends.
adds 90a187a Correct integer multiplication and add extra test case.
adds e6f1df7 Correct make distcheck.
adds 712877a Correct implementation problems on ix86.
adds 1c9088b Update code to build and pass test cases in the arm port.
adds 01be83d Make mips backend compile on a qemu image.
adds 760fab8 Correct mips backend implementation to pass initial tests.
adds aa7c823 Implement sqrt codes in mips.
adds f59fceb Add new test cases to exercise memory load/store.
adds 91244b1 Correct test cases in i586 build.
adds 66cb445 Make current test cases pass in armv7l.
adds ee0fab1 Correct testcases in the mips backend.
adds e7e5596 Add new ldst variant test cases to check base/index
register clobber.
adds d1c0bc8 Add new test case for int/float to/from conversion.
adds e255b76 Add several arithmetic and branch tests cases.
adds a3fbc5d Correct test cases in the mips backend.
adds 7e3d863 Add better ppc support code, but still not functional.
adds a04df96 Make all current test cases pass in Darwin PowerPC.
adds 0b89a17 Add jit_ellipis and remove jit_prepare argument.
adds 6227bf5 Add new varargs test and correct related test case
failures in all ports.
adds 0740564 Remove most type casts and compile test tool silently
with -Wall
adds 03559bb Make it clear stdarg like abstraction is not supported.
adds 0e83b52 Correct test cases to work with x87 in ix86.
adds d05538b Add support to test different/alternate code generation
setups.
adds d7389bf Simplify listing of test cases with alternate jit
generation options
adds b43ea1f Add two extra test cases for float operations.
adds a74318a Add new test case to check stack integrity on complex
stack frames.
adds 2751320 Correct stack.tst test case on ppc. Now all tests pass in
all backends.
adds 38770ec Correct bogus logic caused by wrong optimizations.
adds 59255a4 Add new register clobber detection test case.
adds adc854f Correct regressions with --with-float={soft,softfp} in
the arm backend
adds 374f58b Add missing jit_htonr to ppc backend.
adds afd665d Add new carry test case.
adds 3ee09ec Add simple test case to test argument and return values.
adds 1287a2d Correct extra regressions found by the call.tst test case.
adds 2e6c680 Change type of return of jit_arg* and argument to
jit_getarg*
adds 6eab5be Add new extensive float comparison and conversion test
case
adds 537c85b Correct wrong and confusing reverse float comparison logic
adds d7f9437 Test and correct test cases in all current backends.
adds 9d2566e Add the new ccall test case to test interleaved C and jit
function calls
adds 4fe4794 Rework {get,push}arg{,i,r}_{f,d} to a more descriptive
name and usage.
adds a34410e Add filename and line number annotation abstraction.
adds 39afbe1 Correct off by one label/note name and add align argument
to jit_data
adds c5421a8 Make JIT_RET, JIT_FRET and JIT_SP private.
adds 9e86ef1 Add the new jit_name call to mark function boundaries
adds 2da31e8 Correct reference to dangling pointer and better note
bounds checking
adds 16d18f1 Update texinfo documentation to match current
implementation.
adds 44d4fa5 Add heuristic code to estimate space and resize if
required jit buffer.
adds 7c7908c Correct C sequence point problem.
adds 708cca9 Correct description of the jmpi instruction.
adds d91b25d Implement the qmul and qdiv instructions.
adds 7b2c9cf Correct qmul and qdiv in ppc.
adds 60c1c54 Implement the "live" code to explicitly tell a register
is live.
adds 6039794 Store all annotation information in the read only data
buffer.
adds 8f020fe Add code to release all memory used by the jit state.
adds 12c35b7 Correct regression with float arguments in arm hardp
adds 610a569 Add framework for sparc port.
adds e304bc8 Pass all but the (not yet implemented) qmul and qdiv
tests in sparc
adds e6a14a6 Finish sparc port.
adds 678e724 Add updated sparc example from lightning 1.2c
documentation.
adds da4c3f3 Correct SPARC optimized assembly example in documentation
adds f39eee6 Make code and data buffer readonly.
adds 9afca85 Rework to better describe what is used only during jit
generation.
adds 5d60ba7 Minor updates when testing on a prototype, quadcore
Loongson mips.
adds 19123ba Add missing __ppc__ definition.
adds 7ef8060 Adapt PowerPC port to work in Darwin 32 bit and Linux 64
bit.
adds f341d91 Remove non optional gmp dependency.
adds be9068f Correct wrong shift value for 32 bit
adds c39def9 Add a simple memory management wrapper.
adds 51c96f9 Do not start over jit generation if can safely grow
buffer size.
adds 066db58 Ensure the end argument of __clear_cache is page aligned.
adds 7bdd22b Make it simpler to add support for more than 64 registers.
adds c2e4eb6 Add basic Itanium port infrastructure.
adds 89f1e2f Properly split instruction groups for predicate registers.
adds 746f3bb Correct jit implementation to pass several test cases.
adds b663d29 Correct race condition if register is written more than
once
adds caeb6d6 Implement fpr register arguments and minor extra fixes.
adds 2475ae8 Correct float division and LX with stop code generation.
adds f52b976 Correct all ldst test cases.
adds 119ea1e Correct the cvt.tst test case on Itanium.
adds cee4ccb Correct remaining test cases, but not yet ones with stack
arguments.
adds 6ef03b0 Finish Itanium port, correcting remaining failing test
cases.
adds e80b244 Remove remaining ia64 port debug code.
adds 3356b9d Add functional hppa port. All tests pass.
adds ce6ab1f Prepare for the first alpha release of lightning 2.0.
adds 3e5a12f Adjust lightning to work on ppc AIX.
adds e82e5be Build and pass all test cases on a multiprocessor HP-UX.
adds 443b746 Remove redundancy in the hppa cache synchronization code.
adds 7807aab Update ia64 port to work on HP-UX.
adds af92c5a Correct build and pass all tests on Solaris Sparc.
adds dbe0fb9 Correct build and pass all tests on Solaris x86.
adds d6110f6 Build and pass all tests on big endian Irix mips using
the n32 abi.
adds 8b28150 Correct mips o32 abi that was broken when adding n32 abi
support.
adds 4f9b9d9 Second alpha release 1.99a
adds 89a0b7a New aarch64 port built on the Foundation v8 emulator.
adds e99c157 Cosmetic removal of unused macros.
adds ab7d15d Properly check tests output.
adds a3891ad Do not assume cast of nan or inf double to float always
work.
adds f6ee396 New s390x port built on the hercules emulator and fedora
16 image.
adds c078a97 Cosmetic removal of white spaces in end of lines.
adds 19e227e Correct off by one bug on s390x subi.
adds b5763c4 Correct license to properly advertise LGPLv3 and not
GPLv3.
adds aa1e0be GNU lightning 2.0.0 release
adds 32b3d7a Correct build on FreeBSD/amd64
adds 7f677a6 Correct build and make check on gcc111 - AIX 7.1.
adds ecf753f Correct build and check on NetBSD amd64.
adds bc0786e test for zlib in configure.ac
adds ba182b1 Avoid possible problem if built with gcc 4.8 or newer.
adds b877005 Correct wrong test and update of arm thumb offset
information.
adds b279feb Add fallback logic instead of error if cannot figure
__WORDSIZE.
adds c6ced66 Add missing jit_clear_state to documentation sample.
adds 183ed91 IA64: Correct code to save/restore r2 used as lightning
JIT_FP.
adds 4552376 HPPA: Correct bogus logic when calling function pointers.
adds 13d521b S390X: Correct values of float registers saved on stack.
adds 15a3ec2 Use the logic to workaround float NaN and Inf Hercules
bug conditional
adds a62f405 Add the jit_callee_save_p interface and extra register
definitions.
adds 5a2df00 Correct wrong example and mt unsafe code in the arm
backend.
adds 948315f Make jit_get_note a public interface.
adds 95e3fbc Add the new jit_pointer_p predicate interface.
adds b768fab Add code to calculate code buffer size based on devel
time information.
adds 2e209eb GNU lightning 2.0.1 release
adds ae6101f IA64: Correct some wrong checks value range checks.
adds 0ad5e08 ARM: Correct build when disassembler is disabled.
adds ff73547 IA64: Force sync of instructions in get-jit-size build
mode.
adds 1bd169c X86: %r12 may be used as an index register.
adds f42a251 Correct misplaced check for already visited blocks
adds 565c3a0 MIPS: Correct abi detection.
adds 36a60d7 Correct wrong dates in ChangeLog
adds 4855845 Correct source of the self test case and a missed check
failure.
adds 52bfc67 MIPS: Build and pass all test cases on mips64.
adds 0e94048 Rerun tests on supported backends after bogus self test
correction
adds 72f3e65 ARM: Correct wrong offset for load/store of floats.
adds 2d4bac4 ARM: Do not use ldrt/strt by default
adds fe3aee2 PPC: Correct wrong ldxi_l simplification in 64 bit mode
adds a264cce Add assertion to detect double patching.
adds f65ceb6 GNU lightning 2.0.2 release
adds 67d994c Sync after regenerating version.texi.
adds 6fa5123 ARM: Minor changes that should allow building on non
gnu-linux/gcc.
adds 479c2ed x86: Use aligned offset for x87 to/from sse move.
adds 4e5368d Correct wrong call in ldi_f if address does not fit in 32
bit.
adds c162b9d x86: Correct wrong x87 float indexed store code
generation.
adds 0b0d63d x86: Ensure the x87 stack is empty when calling a
function.
adds 8567d28 x86: Correct wrong x87 optimization.
adds b1d3217 GNU lightning 2.0.3 release
adds 6e75c03 Rewrite jit_regset_scan1 for easier optimization.
adds dbb9fe1 x86_64: Correct wrong inline assembly in jit_get_cpu
adds c146f06 x86_64: Change x86_64 to also save/restore %rbx in inline
asm.
adds a9433b5 Implement and document the new jit_indirect call.
adds 79bc3d0 Implement the new jit_set_code interface.
adds 33ee233 Implement the new jit_set_data interface.
adds a7cde4b Document the lightning customization functions.
adds 16384ff Correct crash on arm in the doc/printf example.
adds 6726b2b ARM: Do not emit a nop stack adjust instruction.
adds 0fac1b1 GNU lightning 2.0.4 release
adds abf1b6e Do not export private definitions and types.
adds 354146b ARM: Do not leave early init_jit if /proc is not mounted.
adds 0d96d24 Add note about jit_set_memory_functions call.
adds a8c180a Remove the global but not advertised jit_progname variable
adds 0d9ac79 Do not pass null for free, memcpy and memmove
adds cf2be67 MIPS: Correct use of wrong test register
adds b233221 AARCH64: Correct assertion test
adds dbf2847 Do not have assertions with a long type test
adds f79f977 Correct change of possibly wrong bitmask in jit_update
adds 53dd28d Always mark return registers as live in epilog
adds 05b88d9 ALPHA: Implement lightning Alpha port.
adds 73c2fc8 Do not filter -sz.c files in gitignore
adds a597e35 ARM: Correct wrong table of instruction sizes in software
float
adds 93e3ff3 ALPHA: Correct class of argument float registers
adds b589606 Add consistency check on temporaries during a jump
adds 90a70f9 GNU lightning 2.0.5 release
adds 4f8d85b Add info menu entry for lightning
adds 45c4df5 Only mark callee save regs as live on jumps that cannot
be tracked.
adds 120dfc9 Correct typo in documentation.
adds c8bb0da Consider all callee_save_p regs as live on non trackable
jumps
adds f469a5c x86: Build and pass all tests under cygwin64 (Windows x64)
adds 4d0e4b3 x86: Build and pass all tests on 32 bit cygwin
adds 5244847 x86: Update instruction size information for Windows x64
adds 1d75fe6 Do not fail if NULL is passed to init_jit.
adds 20a2f1f Allow jit_jmpi on an immediate constant address.
adds 839341a Implement jit_frame and jit_tramp interfaces
adds dbb1bb2 Use jit_code_last_code as symbolic name of last enum
adds afae540 Implement the jit_align interface
adds 5c0c5bd Add back files missed when reapplying patches
adds 624cf33 Add string representation of IR codes to -sz.c files
adds 960280d Implement the jit_rsb* interface.
adds a43fb63 Add the new "range" test.
adds 9c5e2b5 Add label predicates
adds 0c6f675 Properly handle jit_tramp and function descriptors
adds 9cdcfcc Do not fail gratuitously in jit_init_debug
adds ddd7a75 x86: Correct not released temporary register
adds 4451945 Add assertion to check for register allocation leaks
adds 2229200 misc: Make jit_note and related functions take a const
argument
adds 073396b misc: Enable silent rules to make warnings stick out
adds 3008f04 misc: Create a pkg-config file
adds 59eb1a1 Actually install the pkgconfig file.
adds 81b1a90 Force creation of the m4 directory on a clean checkout
adds dea1775 Update THANKS file
adds e98640e cross: Provide the action for the cross compiling case
adds 85ab988 Resync with new patch to make functions receive a const
argument
adds ade2337 mips: Do not make t9 available as a generic register
adds 95f4ee4 Add test case to check possible issues with 2 contexts
adds 7b449aa Implement jit_flush
adds 3f39722 ARM: Correct several inconsistencies with ldrd and strd
adds 6e34a53 PPC: Add initial powerpc le support.
adds 2d3529d Correct bogus git entry
adds c95a356 Remove a wrong optimization of callee save registers
adds ce2dd3d Add missing ellipsis mark to align.tst
adds f63d064 ARM: Correct constants offset check
adds 1cb0e18 ARM: Flush cache page by page
adds 3b829ab Add missing float rsbi strings
adds fdf41c1 x86: Implement support for the x32 abi
adds 88aa2fc Implement new, typed, jit_htonr* interfaces
adds 5eb3c36 ARM: Better check for constants offset overflow
adds a16adad PPC: Implement and use mcrxr emulation by default
adds af9df5f PPC: Build and pass all tests in powerpcle
adds 32c4f90 S390: Add support for 32 bit.
adds 192f89c S390: Replace s390x filenames with s390
adds 27d9b68 Implement jit_putarg*
adds 618512a Correct typo.
adds 361caf2 PPC: Only call binutils function if it is available
adds 3695a2e Update documentation
adds 73e5207 Remove inconsistent, public jit_arg_reg_p macro
adds c8b6c36 Implement the jit_arg_register_p predicate.
adds 894a024 Update documentation on jit_frame and jit_tramp
adds 6db38b7 ARM: Do not limit to 24 bit displacement jump to unknown
address
adds 1b055bf Make more readable always true test
adds 6782807 Add new --enable-devel-disassembler configure option
adds cdf5b78 ARM: Regenerate size table for hard float armv7 or newer.
adds 5724068 Correct wrong check in simplify_stxi.
adds f6970c6 Correct the reason the simplify_stxi bug was not noticed
before
adds fb21cf9 Avoid problems if JIT_INSTR_MAX is miscalculated
adds 26c28be Correct typo
adds 7fdbc5b GNU lightning 2.1.0 release
adds 3a03fea X86: Correct load and store in the x32 abi
adds 2597bf3 Correct inconsistency with jit_regno_patch
adds 9f72e66 X86: No longer make st7 available as a temporary
adds ad589fb Implement jit_allocar for dynamic stack allocation
adds d462a4f Correct typo in x87.nodata test list
adds 531a88a Add missing ellipsis in allocar.tst
adds 20955b2 Correct read of freed memory
adds 1507bc7 Properly correct read of freed memory
adds a15f261 Update copyright date
adds d639674 Add initial support to implement vararg jit functions
adds e4fe518 Update the correct fp offset and add assertions
adds 6329945 Correct update of on stack vararg double argument pointer
adds 0986ae8 aarch64: Add initial jit_va_ calls to aarch64
adds 8cb302f arm: Add initial jit_va_ calls to arm
adds 2c8b5e5 s390: Add initial jit_va_ calls to s390
adds cc217f0 ppc: Add initial jit_va_ calls to ppc
adds b42bb8b Remove wrong comment after cut and paste
adds a5ab4c7 mips: Add initial jit_va_ calls to mips
adds f48e07b ia64: Implement cache flush.
adds a3063df ia64: Do not use a dangling pointer for double to integer
copy
adds 6d8f8eb ia64: Add initial jit_va_ calls to ia64
adds fdd55b9 hppa: Add initial jit_va_ calls to hppa
adds 9a90a28 alpha: Add initial jit_va_ calls to alpha
adds bd38cfa sparc: Add initial jit_va_ calls to sparc
adds d6a5a90 alpha: Save correct offset if loading a vararg double.
adds 97f69a9 Correct make check for systems without gcc.
adds 316dfc6 aarch64: Correct va_list offsets and double load.
adds 237c902 Bump library major.
adds 0b6cc01 Intermediate, fully functional, rework for variadic
functions
adds 1ce1d00 Move multiply defined macro to a single header file.
adds e21db9c Use an actual, invalid code, as last jit code.
adds 7f1e0df Move definition of jit_va_ codes, cosmetic change.
adds d0a5bd8 Implement new synthesized IR codes sequences
adds c6b8fb2 ia64: Pass all tests for variadic jit functions
adds 17e7896 mips: Pass tests for variadic jit functions on new abi
adds fd57359 Correct missing jit_unget_reg calls
adds 76876dd Implement a correct generation of Fibonacci numbers.
adds be32b6a Correct wrong check for argument of value 2 in
check/fib.tst.
adds b00c750 Correct wrong movr simplification
adds aa939b8 Correct wrong live information for some code patterns
adds d761499 Add a second pass to compute live register ranges
adds 7259f9d Adapt for binutils 2.29
adds 3fc2eb2 Update copyright year
adds c72b923 GNU lightning 2.1.1 release
adds 19439d4 Correct binutils version detection
adds df57fa9 GNU lightning 2.1.2 release
adds 68dc475 Correct issues with 32 bit big endian mips abis
adds 59f32e8 Add extra argument to jit_update to prevent recursion on
branches
adds 2cf092e Correct logic error with jit_live in jit_retr
adds b64b82c Always set t12 to address of called function
adds ed5589c Build and pass all test cases on Alpha Linux
adds 2cea993 Build and pass all tests on 32 and 64 bit sparc
adds d2ff737 HPPA: Correct wrong regarg_p check
adds 94a1888 Correct typo and values in jit_sparc-sz.c
adds 40aafa5 Merge GNU lightning to libguile/lightning
adds 25584ea Strip "get-jit-size" feature from lightning.
adds 7dec6cb Remove documentation from embedded GNU lightning
adds 0bdd27b Remove lightning unit tests
adds 8810163 Finish removing get-jit-size
adds f0891be Beginnings of build integration of lightning and guile
adds 0e25ee5 Remove lightning pkg-config file.
adds 2e489b3 Remove empty lightning m4 directory
adds fddd206 Remove some more of the lightning build machinery
adds 8316707 Further lightning integration work
adds 2a8ebe8 Remove disassembler support from lightning
adds 0ce8e69 Remove special cflags for obsolete Lightning targets
adds 92a7570 Always enable assertions in embedded lightning
adds fdfbfcc Remove lightning configure snippet related to libdl
adds 2412cfb Remove unused configure-time checks for x87, thumb, and
sof float
adds f8b8f5f Remove unused AM_CONDITIONAL statements from lightning
configure
adds 0593a9a Add GUILE_ENABLE_JIT macro
adds 2d84803 Wire JIT availability check into Guile configure
adds 9338ef1 Wire up lightning into libguile build
adds 07a787d Remove -Wswitch-enum from compile flags
adds 5b68bd7 Fix compile warnings in jit_print.c
adds d6b8f6a Minor change to VM DSL
adds a433620 Fix bad opcode in VM
adds 5577392 Begin structure for template JIT compiler
adds 9fc5282 Merge 'master' into 'lightning'
adds 80ba0e2 Make JIT compiler skeleton more terse
adds e95f15c Add support for reading ELF symbol table from C
adds b1705bd Prepare for frames having separate virtual and machine
return addrs
adds 043432f Reserve frame word for machine return address
adds c2a8224 Rework VM approach to shuffling unknown numbers of args
adds 9b70129 Fix stale stack frame clearing for frame size change
adds 950a762 Multiple-value returns now start from slot 0, not slot 1
adds 4b7af0b7 Update frames.h comments.
adds 87da1c8 Add instrument-call, instrument-loop VM instructions
adds a6b5049 Emit instrument-loop in loops.
adds 5c2e155 Emit instrument-entry before programs
adds 5077e67 Fix function bound offsets of JIT data to be signed
adds b8a9a66 Rewrite subr implementation
adds 5ebe584 Revert "Add support for reading ELF symbol table from C"
adds 455015d Fix bugs with primitive code allocator; expose internally
adds d145b57 Minor updates for Scheme runtime (statprof, backtraces)
adds 14539d3 Alloc foreign procedures using primitive mechanism
adds 8f25f75 Add instrument-entry to continuations
adds dedf73d Consolidate apply hook to instrument-entry instruction
adds f4c5044 Remove push continuation hook; return hook runs before FP
pop
adds 0a01963 VM hooks take no values
adds 41100f7 Merge branch 'master' into lightning
adds 0d00164 Add missing include to adapt to recent merge from master
adds b7dbc72 Minor optimization in RESET_FRAME
adds 926b72f Rework program->ip mapping in VM to always call intrinsic
adds c3ff72c Change call/cc inst to capture-continuation
adds ef4c1a5 Add unpack-values-object intrinsic
adds 6027027 Invoke VM hooks through intrinsics
adds 939b1ae Rework foreign-call trampoline
adds a20feea Continuations capture machine code address
adds 5df43b6 Adapt JIT calling convention; continuations take mra from
stack
adds 11940f4 Update error-wrong-num-args intrinsic prototype
adds d4abe8b Avoid needless 64-bit args on 32-bit machines for some
intrinsics
adds 0188bd3 64-bit intrinsic args and return values passed indirectly
on 32-bit
adds e6304fb Define intrinsics for atomic ops
adds 3827769 Add instrumentation to VM builtins
adds cf0270c Add internal function mapping subr index to function
adds 110310b Expose scm_vm_builtin_ref internally
adds 698bff8 First implementation of a template JIT
adds dca1e9d Manual JIT interface via %jit-compile
adds 4a9de64 Fix default code allocator in Lightning
adds b8a557d Fix bounds on compiler-emitted JIT metadata
adds d001503 JIT compilation tweaks
adds 9c76a1a Fix frame popping in JIT
adds 916c570 Tweak to instrument-entry
adds d7fcdd9 Add out-of-line handle-interrupts trampoline stub
adds 7769561 Add support for labels, and fix a bug in uadd/imm and
usub/imm.
adds 01c1451 Add $(builddir) to include path in libguile/Makefile.am
adds 01a79be Comments in the JIT
adds fd1deab Optimizations to subr-call
adds 065efdd Fix in-tree builds
adds bf035d9 Fix load width of get-ip-relative-addr
adds 7854460 Minor refactors to jit.c
adds 25e9b0f 32-bit fix for emit_run_hook
adds 270147c Fix r12 register spec for lightning with sysv x86-64 ABI
adds 5603079 Clear frame size after subr-call, return-values
adds 02a9e76 Fix bug in compile-alloc-frame
adds 3920b99 Fix fp-ref, fp-set! helpers in jit for signedness
adds d0c9d20 Fix JIT compilation of bind-rest
adds 9574245 Fix again the unknown-filling of alloc-frame
adds dfc0b90 JIT refactor
adds 18dfe48 Fuse comparisons and branches in JIT
adds 98b4c46 Minor JIT refactor
adds 4fb99e9 Bug-fix for alloc-frame and stack moving
adds 10bfd55 JIT: Store FP in register during procedure prolog/epilog
adds c03e2bb JIT tracks register clobbers
adds 24d09b1 Maybe enter JIT when returning from interpreted functions
adds f2089ce Add fast paths to intrinsics
adds 66fb76d Fix miscompilation for "abort" opcode
adds c02c89d Fix JIT compilation of call-with-prompt
adds 15314fd Fix JIT compilation of shuffle-down
adds f32d17d Fix jit function data for goto_continuation_code
adds 6da132c Fix JIT compilation of composable continuations
adds dac4344 Fix bind-kwargs JIT compilation
adds def6719 Minor optimization in compile_alloc_frame
adds cc99729 JIT threshold controlled by environment variable
adds 79be702 More JIT debugging
adds dafa648 Fix compilation of compile_eq
adds 7c0bfcb Minor 32-bit untag-fixnum optimization
adds 1f42a60 Add ability to stop JIT after N compilations.
adds 449ef7d Prevent Lightning from stompling our registers
adds b176e71 Add configurable JIT logging levels
adds 076c3ad JIT counter tweaks
adds 54b23ad Add ability to tier up from within loops
adds e9b44c0 Fix assertion error running compile-file with threshold 0
adds 162e313 Fix a memory leak in JIT
adds 24b4d09 Improve compute_mcode allocation logic
adds babd411 Fix nonlocal abort to compiled continuation
adds cf712c0 Improve JIT cleanup a bit
adds 218fe1b Fix JIT compilation of [positional-]arguments<=?
adds 93112d3 Add JIT fast paths for inum arithmetic
adds 3e2b173 Revert "<?" fast path for now
adds f8229c6 Use custom JIT code allocator
adds 377c3e1 Fix compilation of handle-interrupts
adds 227c3ac Refactor handling of lightning state
adds 18aa995 Fix compilation of compare-and-swap
adds 46fe5b0 Fix positional-arguments<=? compilation
adds ce5c05a Fix JIT compilation of intrinsics that return doubles
adds bf31fe4 VM manages hook sets itself
adds 0ccd2d0 Remove hook intrinsics: hooks are just for the VM
adds 8bb9ae3 Micro-optimization of scm_vm placement in scm_thread
adds 12b125f Hook refactors
adds 09b8f8e Deoptimize to VM when hooks are enabled
adds 4dba015 Fix scm_make_foreign_object_n.
adds 883bdc7 Fix emergency aborts to not expand the stack
adds f03ff53 Turn on automatic JIT compilation by default
adds ce91698 Fix --disable-jit compilation
No new revisions were added by this update.
Summary of changes:
acinclude.m4 | 58 +-
am/bootstrap.am | 2 +-
configure.ac | 7 +-
lib/Makefile.am | 2 +-
libguile/Makefile.am | 17 +-
libguile/continuations.c | 45 +-
libguile/continuations.h | 3 +-
libguile/control.c | 27 +-
libguile/dynstack.c | 25 +-
libguile/dynstack.h | 4 +-
libguile/eval.c | 3 +-
libguile/foreign-object.c | 2 +-
libguile/foreign.c | 20 +-
libguile/foreign.h | 3 +
libguile/frames.c | 37 +-
libguile/frames.h | 60 +-
libguile/gsubr.c | 582 ++-
libguile/gsubr.h | 19 +-
libguile/init.c | 4 +
libguile/instructions.c | 6 +
libguile/intrinsics.c | 131 +-
libguile/intrinsics.h | 68 +-
libguile/jit.c | 4784 +++++++++++++++++
libguile/jit.h | 67 +
libguile/lightning/.gitattributes | 1 +
libguile/lightning/.gitignore | 33 +
libguile/lightning/AUTHORS | 14 +
COPYING => libguile/lightning/COPYING | 18 +-
libguile/lightning/COPYING.DOC | 355 ++
.../lightning/COPYING.LESSER | 4 +-
libguile/lightning/ChangeLog | 4018 +++++++++++++++
libguile/lightning/NEWS | 199 +
libguile/lightning/README | 3 +
libguile/lightning/THANKS | 19 +
libguile/lightning/TODO | 28 +
libguile/lightning/include/lightning.h | 1096 ++++
libguile/lightning/include/lightning/jit_aarch64.h | 89 +
libguile/lightning/include/lightning/jit_alpha.h | 105 +
libguile/lightning/include/lightning/jit_arm.h | 127 +
libguile/lightning/include/lightning/jit_hppa.h | 134 +
libguile/lightning/include/lightning/jit_ia64.h | 120 +
libguile/lightning/include/lightning/jit_mips.h | 115 +
libguile/lightning/include/lightning/jit_ppc.h | 109 +
libguile/lightning/include/lightning/jit_private.h | 740 +++
libguile/lightning/include/lightning/jit_s390.h | 68 +
libguile/lightning/include/lightning/jit_sparc.h | 102 +
libguile/lightning/include/lightning/jit_x86.h | 199 +
libguile/lightning/lib/jit_aarch64-cpu.c | 2446 +++++++++
libguile/lightning/lib/jit_aarch64-fpu.c | 914 ++++
libguile/lightning/lib/jit_aarch64-sz.c | 402 ++
libguile/lightning/lib/jit_aarch64.c | 1582 ++++++
libguile/lightning/lib/jit_alpha-cpu.c | 2792 ++++++++++
libguile/lightning/lib/jit_alpha-fpu.c | 1588 ++++++
libguile/lightning/lib/jit_alpha-sz.c | 402 ++
libguile/lightning/lib/jit_alpha.c | 1551 ++++++
libguile/lightning/lib/jit_arm-cpu.c | 3955 ++++++++++++++
libguile/lightning/lib/jit_arm-swf.c | 2640 ++++++++++
libguile/lightning/lib/jit_arm-sz.c | 808 +++
libguile/lightning/lib/jit_arm-vfp.c | 2330 +++++++++
libguile/lightning/lib/jit_arm.c | 2274 ++++++++
libguile/lightning/lib/jit_hppa-cpu.c | 2793 ++++++++++
libguile/lightning/lib/jit_hppa-fpu.c | 1039 ++++
libguile/lightning/lib/jit_hppa-sz.c | 402 ++
libguile/lightning/lib/jit_hppa.c | 1585 ++++++
libguile/lightning/lib/jit_ia64-cpu.c | 5415 ++++++++++++++++++++
libguile/lightning/lib/jit_ia64-fpu.c | 1762 +++++++
libguile/lightning/lib/jit_ia64-sz.c | 402 ++
libguile/lightning/lib/jit_ia64.c | 1765 +++++++
libguile/lightning/lib/jit_memory.c | 126 +
libguile/lightning/lib/jit_mips-cpu.c | 3153 ++++++++++++
libguile/lightning/lib/jit_mips-fpu.c | 1844 +++++++
libguile/lightning/lib/jit_mips-sz.c | 1210 +++++
libguile/lightning/lib/jit_mips.c | 1929 +++++++
libguile/lightning/lib/jit_names.c | 230 +
libguile/lightning/lib/jit_note.c | 417 ++
libguile/lightning/lib/jit_ppc-cpu.c | 3483 +++++++++++++
libguile/lightning/lib/jit_ppc-fpu.c | 1194 +++++
libguile/lightning/lib/jit_ppc-sz.c | 1622 ++++++
libguile/lightning/lib/jit_ppc.c | 1745 +++++++
libguile/lightning/lib/jit_print.c | 370 ++
libguile/lightning/lib/jit_rewind.c | 195 +
libguile/lightning/lib/jit_s390-cpu.c | 3848 ++++++++++++++
libguile/lightning/lib/jit_s390-fpu.c | 1316 +++++
libguile/lightning/lib/jit_s390-sz.c | 804 +++
libguile/lightning/lib/jit_s390.c | 1690 ++++++
libguile/lightning/lib/jit_size.c | 79 +
libguile/lightning/lib/jit_sparc-cpu.c | 2568 ++++++++++
libguile/lightning/lib/jit_sparc-fpu.c | 1499 ++++++
libguile/lightning/lib/jit_sparc-sz.c | 803 +++
libguile/lightning/lib/jit_sparc.c | 1926 +++++++
libguile/lightning/lib/jit_x86-cpu.c | 3861 ++++++++++++++
libguile/lightning/lib/jit_x86-sse.c | 1569 ++++++
libguile/lightning/lib/jit_x86-sz.c | 1610 ++++++
libguile/lightning/lib/jit_x86-x87.c | 1344 +++++
libguile/lightning/lib/jit_x86.c | 2264 ++++++++
libguile/lightning/lib/lightning.c | 3391 ++++++++++++
libguile/lightning/lightning.am | 93 +
libguile/programs.c | 29 +-
libguile/programs.h | 1 +
libguile/r6rs-ports.c | 1 +
libguile/stacks.c | 4 +-
libguile/threads.c | 5 +
libguile/threads.h | 7 +-
libguile/throw.c | 10 +-
libguile/vm-builtins.h | 1 +
libguile/vm-engine.c | 670 +--
libguile/vm.c | 672 ++-
libguile/vm.h | 53 +-
module/Makefile.am | 2 +-
module/language/cps/compile-bytecode.scm | 29 +-
...dle-interrupts.scm => loop-instrumentation.scm} | 48 +-
module/language/cps/slot-allocation.scm | 22 +-
module/statprof.scm | 67 +-
module/system/vm/assembler.scm | 106 +-
module/system/vm/coverage.scm | 9 +-
module/system/vm/disassembler.scm | 30 +-
module/system/vm/frame.scm | 42 +-
module/system/vm/program.scm | 7 +-
module/system/vm/trace.scm | 15 +-
module/system/vm/traps.scm | 177 +-
module/system/vm/vm.scm | 10 +-
test-suite/tests/rtl.test | 74 +-
122 files changed, 99556 insertions(+), 1237 deletions(-)
create mode 100644 libguile/jit.c
create mode 100644 libguile/jit.h
create mode 100644 libguile/lightning/.gitattributes
create mode 100644 libguile/lightning/.gitignore
create mode 100644 libguile/lightning/AUTHORS
copy COPYING => libguile/lightning/COPYING (99%)
create mode 100644 libguile/lightning/COPYING.DOC
copy COPYING.LESSER => libguile/lightning/COPYING.LESSER (99%)
create mode 100644 libguile/lightning/ChangeLog
create mode 100644 libguile/lightning/NEWS
create mode 100644 libguile/lightning/README
create mode 100644 libguile/lightning/THANKS
create mode 100644 libguile/lightning/TODO
create mode 100644 libguile/lightning/include/lightning.h
create mode 100644 libguile/lightning/include/lightning/jit_aarch64.h
create mode 100644 libguile/lightning/include/lightning/jit_alpha.h
create mode 100644 libguile/lightning/include/lightning/jit_arm.h
create mode 100644 libguile/lightning/include/lightning/jit_hppa.h
create mode 100644 libguile/lightning/include/lightning/jit_ia64.h
create mode 100644 libguile/lightning/include/lightning/jit_mips.h
create mode 100644 libguile/lightning/include/lightning/jit_ppc.h
create mode 100644 libguile/lightning/include/lightning/jit_private.h
create mode 100644 libguile/lightning/include/lightning/jit_s390.h
create mode 100644 libguile/lightning/include/lightning/jit_sparc.h
create mode 100644 libguile/lightning/include/lightning/jit_x86.h
create mode 100644 libguile/lightning/lib/jit_aarch64-cpu.c
create mode 100644 libguile/lightning/lib/jit_aarch64-fpu.c
create mode 100644 libguile/lightning/lib/jit_aarch64-sz.c
create mode 100644 libguile/lightning/lib/jit_aarch64.c
create mode 100644 libguile/lightning/lib/jit_alpha-cpu.c
create mode 100644 libguile/lightning/lib/jit_alpha-fpu.c
create mode 100644 libguile/lightning/lib/jit_alpha-sz.c
create mode 100644 libguile/lightning/lib/jit_alpha.c
create mode 100644 libguile/lightning/lib/jit_arm-cpu.c
create mode 100644 libguile/lightning/lib/jit_arm-swf.c
create mode 100644 libguile/lightning/lib/jit_arm-sz.c
create mode 100644 libguile/lightning/lib/jit_arm-vfp.c
create mode 100644 libguile/lightning/lib/jit_arm.c
create mode 100644 libguile/lightning/lib/jit_hppa-cpu.c
create mode 100644 libguile/lightning/lib/jit_hppa-fpu.c
create mode 100644 libguile/lightning/lib/jit_hppa-sz.c
create mode 100644 libguile/lightning/lib/jit_hppa.c
create mode 100644 libguile/lightning/lib/jit_ia64-cpu.c
create mode 100644 libguile/lightning/lib/jit_ia64-fpu.c
create mode 100644 libguile/lightning/lib/jit_ia64-sz.c
create mode 100644 libguile/lightning/lib/jit_ia64.c
create mode 100644 libguile/lightning/lib/jit_memory.c
create mode 100644 libguile/lightning/lib/jit_mips-cpu.c
create mode 100644 libguile/lightning/lib/jit_mips-fpu.c
create mode 100644 libguile/lightning/lib/jit_mips-sz.c
create mode 100644 libguile/lightning/lib/jit_mips.c
create mode 100644 libguile/lightning/lib/jit_names.c
create mode 100644 libguile/lightning/lib/jit_note.c
create mode 100644 libguile/lightning/lib/jit_ppc-cpu.c
create mode 100644 libguile/lightning/lib/jit_ppc-fpu.c
create mode 100644 libguile/lightning/lib/jit_ppc-sz.c
create mode 100644 libguile/lightning/lib/jit_ppc.c
create mode 100644 libguile/lightning/lib/jit_print.c
create mode 100644 libguile/lightning/lib/jit_rewind.c
create mode 100644 libguile/lightning/lib/jit_s390-cpu.c
create mode 100644 libguile/lightning/lib/jit_s390-fpu.c
create mode 100644 libguile/lightning/lib/jit_s390-sz.c
create mode 100644 libguile/lightning/lib/jit_s390.c
create mode 100644 libguile/lightning/lib/jit_size.c
create mode 100644 libguile/lightning/lib/jit_sparc-cpu.c
create mode 100644 libguile/lightning/lib/jit_sparc-fpu.c
create mode 100644 libguile/lightning/lib/jit_sparc-sz.c
create mode 100644 libguile/lightning/lib/jit_sparc.c
create mode 100644 libguile/lightning/lib/jit_x86-cpu.c
create mode 100644 libguile/lightning/lib/jit_x86-sse.c
create mode 100644 libguile/lightning/lib/jit_x86-sz.c
create mode 100644 libguile/lightning/lib/jit_x86-x87.c
create mode 100644 libguile/lightning/lib/jit_x86.c
create mode 100644 libguile/lightning/lib/lightning.c
create mode 100644 libguile/lightning/lightning.am
rename module/language/cps/{handle-interrupts.scm => loop-instrumentation.scm}
(56%)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Guile-commits] branch master updated (215617c -> ce91698),
Andy Wingo <=