[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch feature/native-comp created (now b0a2838)
From: |
Andrea Corallo |
Subject: |
branch feature/native-comp created (now b0a2838) |
Date: |
Wed, 1 Jan 2020 07:31:46 -0500 (EST) |
akrl pushed a change to branch feature/native-comp.
at b0a2838 Revert "Pacify gcc -Wunused-function on Ubuntu 18.04.3"
This branch includes the following new commits:
new 0f476b1 Move native C code into shared library
new ea622e3 Add nativecomp option to configure
new 71d61b0 Create bytecode.h
new 64dfd59 Make block_atimers unblock_atimers extern
new 01442a9 Add native compiler comp.c
new 5238cd1 add varbind support
new 54e1853 add funcall
new 25127da rename type
new 1f2529d add Bunbind
new b21539f generalize lisp call ret type
new f4d2f75 add void ptr
new 5a9d4d6 add Blength
new 2b48e5f Baref
new 770e52e add discard and dup
new bebd14a add aset
new 17807af add symbol-value
new f42b2b0 introduce CASE_CALL_NARGS macro and add various ops
new 38a5a36 some more ops
new 28cd3ab rationalize jit_emit_Ffuncall
new 6ce8092 add jit_emit_callN
new 2a5c81a store ffuncall with all other functions
new a552450 add concat
new 7ad90d4 add some more ops
new 7e3d665 replace printfs with proper errors for non supported ops
new a801400 move return into the right place
new 68472f4 some more ops
new 15b4f9d precompute nil
new 1121416 adding stuffs
new c6680e1 better error msg
new 3943db1 adding more stuffs
new 70fc2a7 naming change
new d234e9b add stuffs
new 37381fb generalize bblocks
new c43a9d9 add bb computation
new 2b56339 adding conditionals
new b3038fa add relative branch ops
new 5cbb6ad better errors
new 16b2a54 add some new constant
new b8aeb2e move to lispobj as union
new e642113 remame compiler functions
new 1e9bd1d adding sub1
new 34d1a15 fix uninitialized read
new efd20b8 add comp_xfixnum + comp_make_fixnum
new 96fc40d generate reproducer if needed
new 8bfe8ce add sub1
new a580344 add speed parameter
new f867699 allow + in lisp functions to be compiled
new 097f36b add Badd1 support
new 65eb55f code cleanup
new 7ce2c17 add Bnegate support
new 5c406ad add arithmetic comparisons
new 3ee58c6 add setcar setcdr
new edcadf5 add Bstack_set
new 203b6ce improve comp_lisp_obj_as_ptr_from_ptr generated var naming
new 87bf022 fix prologue strategy
new 1001af9 add bubble sort into to tests
new 4da353c add comp_TAGGEDP
new b3d858d inline consp
new 592bfe5 adding other ops
new d6ab304 add comp_VECTORLIKEP
new f3fd029 make some order into debug facilities
new d886943 reset compiler context for everi run
new 187c1ee rename comp_lisp_obj_from_ptr
new 79dc3a7 XLP XLI l and r values
new 8f446c0 add declare_PSEUDOVECTORP
new a11dc2c better naming ocnvention
new 4ca1857 fix intern_c_string_1
new 4331081 helper_PSEUDOVECTOR_TYPEP ->
helper_PSEUDOVECTOR_TYPEP_XUNTAG
new f245990 emit_call funcs return now rval
new cb4ce8b add emit_BIGNUMP
new 0438e24 add emit_INTEGERP
new 2a1bb41 Bintegerp support
new 96e1a5e fix consp
new 04aafb7 Bnumberp support
new 0c7115c BdiscardN support
new 1510e15 Binsert support
new eefd7d8 Bstack_set2 support
new bb45450 Bcar_safe Bcdr_safe support
new 72e2d67 some renaming convention
new 09b33fb use emacs_int
new 4665ad2 better macro usage
new a9adf96 more type definitions
new 3dde8c0 adding Bpushconditioncase Bpushcatch
new 9cb5ce7 name basic blocks
new 8f0bb7d rework debug dump
new a31a164 imrpve macros
new 7cbfd43 better logging into emit_scratch_callN
new b661d47 better emit_lisp_obj_from_ptr
new 11ca831 pushhandler
new 1d46302 dump all ops as comments
new cc78d4c fix pushhandler
new 39390ed jmp_buf as struct + offset workaround
new 3f96f72 add non locals tests
new 0406c74 fix awful pad hack in define_handler_struct
new a328ce7 fix struct thread_state definition
new 175d932 set target stacks for safety
new ee38ed1 add discard macro
new d9e1257 postfix struct with _s
new dbf05d0 add format_string
new 3a64ec8 bblock -> block
new 5637eae locals to array
new 97b39de remove scratch call mechanism
new 1f26e75 CASE_CALL_NARGS -> CASE_CALL_N
new fdc8de3 add cons definition
new 4577eee better options
new f2dd0cb add char * type support
new 483a2d3 add XUNTAG
new fc2e281 reindent define_thread_state_struct
new c4bebcb define cast union into dedicated function
new 4f5881b better emit_cast
new 6955ca3 add emit_rval_XCONS
new 2dc6ff9 add emit_NILP
new 4d4f2a4 add emit_EQ
new a8c60ea fix XUNTAG
new df93780 full inline car
new 57ac14e add car cdr tests
new 09b8974 split XCAR
new 7ca1835 inline cdr
new 0b7ea16 add define_check_type
new 5e3b3e9 add uintptr_type
new c4ec827 rework emit_call_n_ref
new 98612a8 adding more types
new a65545c make use of gcc_jit_context_get_int_type
new 87ad886 add define_CHECK_IMPURE
new 34b3dac homogeneous emit names
new 5202f74 add setcar
new ecf40f9 emit comments for inlined functions
new 58dfd08 reworking blocks
new b5b0e63 fix setcar
new dc963cf inline setcdr support
new 7363e5c rework emit_cond_jump
new 45c1b64 pass orig lisp f name into compile_f
new 0bdbd4a introduce stack_el_t
new 5c47cb9 propagate contant types and optimize self calls
new 9e71843 optimize primitve native call
new c4b003f add emit_assign_to_stack_slot
new aa312e0 add primitve call test
new edb0acf fix missing bubble sort test
new 3fd19ae fix native call to MANY func
new fac3138 add comp-tests-ffuncall-lambda-f test
new 4311d6e introduce MAX_POP
new 481062f introduce parsearg
new 0dc882e add &rest decription
new 8c28758 extend cast capabilities
new 193688f add emit_ptr_arithmetic
new 36c9295 basic &rest working
new 4992fba rework COMP_DEBUG strategy
new 98b500a optimize outgoing native manyarg calls
new ccc719b jump table support
new cfcfd1f fix jump table
new 15402fe add comp.el
new adeb018 spill lap
new 8d0ae21 working on comp.el
new 83d1a34 first limple
new 85eb3ad working on
new 2782a07 add lists car and cdr
new 02bd934 some code for const propagation
new 8107fc6 add SSA
new a4ea174 clean all crazy macrology in favor of some special var
new f745b49 move out comp-limplify-listn
new e209967 working on
new a9894ac purge C side
new a098165 calling C
new 34e0be8 add comp-c-func-name
new ee04ef4 comment out unused functions
new c51b7fe start compilation C side
new a59ef07 block list in limple
new 3f98a32 basic blocks into C
new cd55772 first functional function
new e46c54e introduce FUNCALL1 macro
new 0a227b6 wipe out propagation info every new basic block
new c1a738b update tests
new 1b9e05b fix function name
new 40ffcb1 simple call support
new 99ec0b4 proper return in place
new 24f80e5 rework hashtable usage
new 30ba6d2 rename entry block
new 25908f5 parameter passing works again
new 0bd54f2 two test passing
new 65918eb function name as annotation
new c81aba0 fix list
new 749f4ce improve function name translation
new 6d0d29c call ref works
new 8f1492c simplify limple instruction set
new 973a7b1 some consistency rework one test +
new 73cb29c varset support 5 test passing
new ba8ca06 let limple support calls with no assignment
new 2e20dca add discard aref aset
new fdbdf3d symbol-value +1 test
new 4a0379b reworking comp.el
new 210a3c0 comp-op-case in place plus other rework
new ac297b6 concat support
new e1d9454 basic funcall
new 1deb54f adding conditionals
new 988a513 block to hash
new af7bfaa rename comp-limple-frame comp-limplify
new 8c14950 conditionals working
new 15e4c44 some code massage
new 721d110 improve comp-c-func-name
new 5aee49d byte-varbind byte-unbind
new 53947aa add comp-emit-set-call-subr macro
new f9723f9 fix goto
new 099f915 rework comp.el
new c87027e adding some ops
new 13811eb better generated code
new fb9711d uncommenting some tests
new a556a2e improve comp-op-case
new f782570 add a bunch of ops
new c7341aa improve comp-op-case again
new 45a4510 adding ops
new 231c717 Add other ops
new 13651c5 uncommenting some test
new 8da012e ops
new 80826b8 uncomment test
new d025ce2 stackset
new 6e1e1bd fix goto
new e25cf44 fix comp-emit-cond-jump
new 7726cb2 bubble sort works again
new 759a15d adding non locals
new 9763577 rework arg parsing on the C side
new a2cf65d separate code
new 868b6b4 separate basic blocks
new 8b22849 pushconditioncase working
new 1b72dad catch works
new 79f7d40 better make-comp-mvar
new bebe5a9 add limple switch support
new 318c477 fix comp-limplify-listn
new c77ad18 add incoming &optional args support
new 63bcc81 add incoming &rest arg support
new dba7034 insert page breaks
new 6465002 add tromeys tests
new f46bfdf fix max_args
new b3dc6e8 fix gcc interruption
new a5e428a rework tests
new 39e224b clean-up unnecessary declarations
new b670b2d pthread_sigmask instead of unblock_atimers
new 7720dce add record_unwind_current_buffer helper_unwind_protect
support
new e175751 fix hash table weakness
new 26da67d add routine dispatcher
new a42d6762 change emit_limple_call_ref arg convention
new df59970 improve routine dispatcher
new 9273afa save C pointers as mint_ptr type to avoid corruption
new b9c2284 block hash use symbol as key
new e65d2f3 some renaming
new 9901f47 some fixes to unbind_n
new 5dda07d dipatcher support for helper_unwind_protect
record_unwind_current_buffer
new f63e174 fix bug for not blanking func_hash after context release
new 5992502 add a test about buffer manipulation
new 3e18100 implement log-buffer
new 128cc4a add record_unwind_protect_excursion support
new bdadeff add narrow-to-region + widen support
new 7dc99d5 add save-restriction support
new bb8f8f5 mark todos
new b6e7df0 rework args structures
new 0c33a8f fix &optional args
new 29e17e0 add comp-emit-narg-prologue
new 74635da C support for new prologue mechanism
new b6288d1 improve comp-tests-ffuncall
new ab69bb6 some minors
new 757a959 some renaming
new af51e65 inline add1
new 6437718 inline sub1
new b30bbf0 inline consp
new 92fc5ba inline car cdr
new 4ed6576 inline negate
new b72d1c5b remove duplicate code
new ac03653 fix preceding-char
new d73dd4c inline numberp
new 916a87f inline integerp
new 15e31a4 fix indent_to
new fd6c673 inline setcar setcdr
new 291531a code clean-up
new 281d3a7 some renaming
new 24fe275 optimize self calls
new bdcd8dd some other renaming
new c4d723e add comp-compile-ctxt-to-file
new 311c278 export native_compiled_emacs_lisp symbol and make it
loadable.
new f4603ab render data_relocs vector
new 5208999 no need to quote types into structs
new 941937d disable const vect per function
new 7cd401f declare comp-ctxt Vcomp_ctxt
new f5ab0db rename a bunch o f functions as private
new 765e57e improve relocation collection
new b6540a8 emit relocs as text into c code
new 6a65498 fixup data relocs at load time
new eb6ac42 remove function list form the C compiler ctxt
new 6f63622 add funcs into comp-ctxt
new c8a0b81 basic reload almost working
new 70a7c65 move away from modules
new 4d7a51e prevent garbage collection
new 20d4224 emit reloc index
new 79d4b69 make use of data relocations
new 5ebc3fc have subr name in limple
new 8bf2e4e add and call comp-add-subr-to-relocs
new 5e06f2f some clean-up into comp.el
new 620794a emit function relocation name from comp.el
new d34eb7a reloc fist simple func
new ed2d884 seems to emit all relocs
new cf0053a some renaming
new ad5488c emit function relocation into structure
new 9413488 reloc emission mechanism seems ok
new dc52036 improve reloc mechanism
new e3163f1 Revert "Create bytecode.h"
new 4c03c469 Revert "Move native C code into shared library"
new 3b696d1 Revert "Make block_atimers unblock_atimers extern"
new a2257a5 add NATIVE_ELISP_SUFFIX def into congure.ac
new a2b1795 clean-up unnecessary includes
new c698ac7 add authorship
new a102f47 emit relocs for callref too
new 90425b6 better messaging when load native elisp
new 76021e1 always release contex even in case of failure
new bfc298c style fix in emit_limple_push_handler
new 999e625 adding runtime relocs
new b9b5cf4 ignore inliners while relocating
new 895bb4c fix func reloc order emission
new 94c542d add more runtime helpers
new 6df64d1 fix relocation emission into comp.el
new 211db14 add record_unwind_current_buffer as imported
new e672990 typo fixes
new 3f841a9 add set_internal as runtime imported
new 6ac6e5b long string literal workaround
new 17cf659 add helper_unwind_protect as runtime imported
new d88d35f let emit_literal_string_func emit a dbg friendly friendly
new 6cd45fb rework stati object serialization
new 41f1fd5 disable part of comp-tests-ffuncall
new f238945 rename a function test to avoid name clashing
new 2f559c2 need to temporary add a load path
new 6d4d922 simplify condition in emit_ctxt_code
new 7e92976 fix last test broken by reload
new 5d6e42e update inline emitters
new 43172dd fix relocs for all inliners
new c05d414 emit fixnum constants as immediates
new ff7093d some order into special vars
new 9913638 use nrevese where necessary
new 82eb75b remove unused helper functions
new 2b51859 prepare for file compilation
new 3d9d7b3 generalize code into comp.el for compile multiple
funcitons
new 37a794c split final pass + some code rework
new 29fcb6c basic file compilation working
new ac47ef7 test separate compile unit
new 4814c6b initial top level support (defvar working)
new 1725982 fix build system for native compiler option
new 06ad745 rename HAVE_LIBGCCJIT -> HAVE_NATIVE_COMP
new 555450c fix lambda handling and add a test for that
new 314f9fc uncomment back all tests
new 59a428ed fix single function compilation
new fca675d fix varset and add a test
new 038f46c rename comp-slot-next -> comp-slot+1
new f74ab3e get right dependency during top level form evaluantion
new 4c62723 add defconst support
new 1b9b19e fix missing specbind import
new ef6c633 add assertion for missing op support
new 5adfe65 fix pretty printing in native compilation buffer
new a2b9d58 nit into comp-log
new a70e54f some error handling in compile_function
new a8517ba add sanity check into compile_function
new b3290047 rework log mechanism to work non interactively too
new 5f10396 add verbosity parameter
new c702e25 do not override existing basic blocks when branching
backwards!
new b9f37a2 pacify gcc and improve sanaity checks
new 63ecf01 crank optimizations while running native compiler test
suite
new 24dcbf4 fix broken selfcall optimization
new 59035c1 add test for recursive calls
new 6a69e49 style nit
new 77e80ae fix missing cl- prefix in comp.el
new 7edbb16 rework basic block creation
new d6d5062 rework comp-new-frame
new 89c144b rename comp-ctxt-funcs comp-ctxt-exp-funcs
new c158b52 add edge computation
new 03045e2 ssa and endge number generation with generator
new e39f5e5 compute dominator tree
new 634f71a add dominator frontiers computation
new deeae4c some code massage + doc into the SSA pass
new e4b32e3 place phis
new 6963dee add comp-dominator-tree-walker
new cb2e646 core reorder
new b7d1b2e add ssa renaming
new 7abf1ca add phi finalizer
new d717357 remove incomplete propagation during limplification pass
new c74f30c fix ssa renaming
new 33ce5fe clean-up limplify
new bbde29c add ssa param to comp-new-frame
new 94cae7b fix again ssa renaming
new 351576f adding propagation
new 747c6a0 modify callref format to explicitate mvars
new 6d1c453 fix switch emission due to missing const prop
new ca28d5f add some notes
new 05b733e fix comp-compute-edges handling all kind of branches
new aba160b0 fix callref parsing into C back-end
new 17ecb1c give back basic block a C like name
new 83a146b rewriting ssa rename
new 69cbf2b keep on fixing ssa
new 47b22e5 add pushhandler to clobber operators
new a317620 add comp-call-optim pass
new bd3cd57 remove comp-emit-funcall
new 9709ff1 add native_elisp field into Lisp_Subr
new a8d358e adding comp-call-optim pass
new 403a7e5 fix compilation for comp.el
new 2cd60cb guard comp-call-optim-form-call for byte compiled callee
new 8124ddf dead code removal
new 4088e46 better naming func_hash -> imported_func_h
new c31b471 add direct-call direct-callref into frontend
new 89172ac split declaration and compilation
new d87d9e4 extend emit_call to perform direct calls
new bbf8b1d add direct-call direct-callref support into the backend
new 2fb2862 cleanup unnecessary code and allow inlining at speed 3
new baf1674 better error signaling when compilation fails
new 10d7284 add missing arguments if missing in
comp-call-optim-form-call
new 8277837 better log output
new 0a014a3 rework lap spilling
new 5976919 better logging
new c6be6fd verify to never emit insns into a closed block
new be1b64b strengthening comp-compute-edges
new 4a0adfe better doc for comp-func struct
new 4c33696 remove unused field into comp-func
new a49be9d better comp-func doc
new fcab7f7 fix comp-new-block-sym
new b45122b rework basic block entry sp emission
new c8d745d clean-up pass mechanism
new 7723576 fix nomenclature into declare_function
new 6e20587 floating frame in place
new 86a2200 repropagate after call-optim
new e3ed020 better note
new d9670ef add dead code removal pass
new eaade31 clean ref slot for mvars optimized by
comp-call-optim-form-call
new 6eb77fe print object in comment when emitting with
emit_const_lisp_obj
new 84caa1a optimize nil emission
new 59d53e1 fix push handler propagation
new 9b5f8eb fix missing direct call parsing in comp back-end
new 89abc8d move gcc_jit_context_dump_reproducer_to_file
new 414a2b5 use type propagation into add1 sub1 negate
new bdea0f6 add some call optimizer doc
new 8f3af3f add type hint to car and cdr
new c0ac7d0 add type hint to setcar setcdr
new d9db777 rework comp-call-optim-form-call
new d66d6ec initial add for compiler hits
new 82a018e better description
new bb25117 add comp-native-compiling flag
new 9c31066 fix comp.el compilation
new 5630eba do not force inlining for func involving ipa-pro
new 7d3da0a fix subr-native-elisp-p predicate name
new 9da6985 always expand file name when bytecompiling
new 8f1670b don't crash when trying to format a very long string
new 734eb8f remove defvar that is not anymore necessary
new de1f89c remove comp-debug
new bf253dd regulate verbosity with comp-verbose
new b8127e9 remove unnecessary autostirng usage
new d19bb48 fix missing direct parameter forwarding into
emit_limple_call_ref
new 9ff0986 remove INLINE hints from comp.c
new abac70f ignore anonymous forms (they are not functions)
new 1f91b8c better immediate type propagation
new 65c0d93 alist-get instead of assoc cdr
new 0ae14c1 fix compilation of devar defconst with doc string
new 0cbe9c2 add comp-test-silly-frame to tests
new 63078fb fix frame size computation
new f8a454f clean-up commented code
new 4cc1374 add comp-test-silly-frame2 to test funcs
new 4a526ab remove nasty nested macro usage in limplify pass
new 4a00e47 fix comp.el compilation warning
new f69a2b8 remove unnecessary macros into limplify pass
new 0133440 doc fix
new 6bbbf3f reworking limplify
new cae7d6c fix label to addr computation
new ca907fe fix missing fall through handling
new a90803a add stack sanity check
new c6d819e fix initial stack depth
new 26db0a0 make stack depth computation robust in limplify
new 3b58bac mega loop refactor
new 1a4aa39 reworking comp-limplify-block
new f0e8354 re enable switch support
new 661567b remove comp-stack-adjust
new aadb83d fix initial sp value
new 689bb58 update emit-handler + rework comp-emit-cond-jump
new f24c0c7 log a page break when start compiling
new 63a1f31 fix comp-limplify-block when falling through a return
new 50604ff fix missing jump into comp-emit-narg-prologue
new eab243d do not check label stack depth when this is not provided
new e4684a2 fix ice logging message
new 922c412 fix limplification when TAG follow fall through eob
new 7ba9a4c add autoload
new 8d08a8a add fetch-handler operator
new 96e2863 rework emit_limple_insn arg parsing
new 4847522 some clean-up
new adac6fa make non local handler bb generation robust for all order
of creation
new 1d3c0d1 fix compilation when modules are enabled
new 59f7b15 fix comp-limplify-block for wrong cl func usage
new face460 make more robust comp-emit-uncond-jump
new cf72d9d emit TAG number as comment
new 45158ed promote a couple of small functions tu subst
new 67ac860 better comp-limplify-block
new 475b476 simplify comp-limplify-block
new 96bca89 fix subr name within comp-limplify-lap-inst
new 10c6303 fix invalid write into emit_limple_insn
new 283b0db Revert "simplify comp-limplify-block"
new 0b9bec6 fix comp-emit-narg-prologue
new 515644e sanity check against block duplication.
new e0e0b92 rework limplify to prevent block duplication
new a18e54f add a test for functions with more than 8 arguments
new 0f68de8 fix limplification for functions with more than 8 args
new 0720354 native compile return the filename of the compilation unit
new d6ae536 some code massage
new 5eb8d3d rework bytecomp spill code
new fb309c1 limplify top level at last
new fb41165 add top-level-forms slot into comp-ctxt (replace old
specific defvar one)
new 03d2dda add doc slot into comp-func struct
new bf91dd2 rework comp-spill-lap-functions-file
new 5c18855 rework top level environment modification mechanism
new a2ed435 fix function top_level_run generation
new 809bd5a test provide
new 9ee6b68 add test for macro definition
new 9f15b4c fix top level macro generation
new d392276 allow nested loadings
new 33d8b73 do not native compile interactive functions
new f97c03e add comp-tests-string-trim
new 93aeb78 fix ref ssa propagation
new 6761e69 fix missing byte-save-restriction op
new eca71dd fix ref propagation
new ec00ef8 have propagate run the correct number of times
new 6a34ff5 rework log mechanism and trim down verbosity
new ce4375f two doc nits
new 6d230fc comment unused functions
new c478922 add current thread missing reloc mechanism
new 3ed524c add pure addr relocation mechanism
new 105e718 sanity check during eln load
new 2ee2c67 simplify non local exit handler mechanism
new 26aeca2 fix comp-copy-insn for dotted pairs
new e176d04 fix SIGIO hang after compilation
new 76dd30a fix again comp-copy-insn
new aee75b8 fix two nits
new f9ea534 move speed definition into lisp code
new d5ffb49 better comp-debug customize
new c33c2ef fix non local mechanism
new c9f3679 compile tests with debug 1
new 00c493f better doc
new 942702f remove unused variable
new e112830 add native-compile-async
new 13816f1 propagate compiler settings to the async workers
new 3bc77cc minimal error handling in load_comp_unit
new 37a0473 XFIXNUM return EMACS_INT
new 7c9a355 better FUNCALL1 name
new 009089f chasing GNU style
new fd42b6c make sure to invoke the right emacs when spawning the
compiler job
new 0cf4a9f set intspec to NULL when creating subrs
new 4320307 propagate load-path into async workers + better messaging
new 8b8b853 cleanup unnecessary symbol definition
new d8f3f87 do not compile automatically autoloads
new f59a96f fix compilation when native compiler is not enabled
new 06fc663 better configure
new 0f59ce5 temporary fix subr doc field to zero
new 6317f9e better error handling into load_comp_unit
new 9b44051 make load mechanism robust against primitives advises
new 0f52602 do not compile if there's nothing to
new a1fd3d6 improve subr-native-elisp-p
new 787444c fix max depth compilation
new b91cbf8 add comp-tests-bootstrap
new 11b3416 add comp-tests-trampoline-removal
new 4bb671f fix emit_limple_call_ref for 0 args case
new a82f192 rework comp-callref lambda list
new 76fcc2a emit_limple_push_handler style fix
new 3d0a3a5 fix configure.ac
new f7c5208 do not force compiler settings within the testsuite
new 13f3b52 always name the compilation unit responsible for the error
new 437c75c add native-units-loaded
new ab3f36f style nit into load_comp_unit
new f6b58e8 message when finished compiling
new 6a546e6 remove old eln before creating a new one to prevent
crashes
new 207b151 Vnative_units_loaded -> Vnative_load_history
new 065dd0b better error signaling while loading
new 3850be8 make compilation too robust against advices
new 41e5c94 require advice when compiling or loading
new 77c9236 add comp-tests-signal
new 41bfb91 add comp-tests-jump-table-2-f
new 42b08f8 some style nits
new a99a3fb fix jump table emission when test fn is not eq
new 16fe8a4 allow for pure function call removal optimization
new 3681402 improve dead assignment
new 407f5aa better comp-function-call-remove
new ab5611c fix comp-propagate*
new 0c60b3b fix comp-tests-bootstrap
new e97826a remove native-load-history
new 37989f9 remove unsigned in favor of ptrdiff_t
new 630fcab fix missing goto into load_comp_unit
new eae7f30 comment nit
new 95eb826 fix symbol_subr + better naming
new 4fe02ac better error handling while loading eln files
new 23874ae define internal-native-compiler-error as error
new 71b363e error handling rework
new 0bf55d3 fix type hints error kind
new d0e6a27 better ert usage into tests
new 9925842 sanityze orthography in comp.el
new 8ef0a18 better loop style into comp-compute-edges
new 954eb9b homogeneous setf style
new d901221 style fixes into comp.c
new a421c27 fix single function compilation
new c039822 better style into comp-tests-bootstrap
new 960aa0c review two slot names in comp-func
new 0c94e69 add comp-tests-free-fun
new 4fc8524 fix single function top level generation
new d2d2290 better comp-byte-frame-size
new d4a5aba9 update limple comments
new ea421cf do not use thread for async compilation
new f0b1519 rename native-compile-log-buffer -> comp-log-buffer-name
new 831f5e6 make buffer names constant
new 9650e5a revert unnecessary modifications
new ba2bbea adjust print verbosity according to the doc
new 44023f3 fix comp-log-edges
new 6a3624e fix wrong enum usage into declare_function
new 10adad4 update limple example
new ba51c31 gate propagate to comp-speed > 1
new 5411bea remove unnecessary return when printing blocks
new a214a29 fix comp-propagate-insn type propagation
new 7f5f60d insert compilation end message at the bottom of the buffer
new 9a87c44 native-compile-async accept list as input
new ce254ff do not emit elc file while native compiling
new 4a639f3 documentation nit
new 60a81f4 better naming variable
new e05253c let intern_c_string works creating with non-pure strings
new f4de790 add native compiled function docstring support
new e2855d9 renaming comp-decrypt-lambda-list -> comp-decrypt-arg-list
new d7071c6 spill also interactive functions
new 48f5530 add int-spec to comp-func
new a248dfe native compile interactive functions support
new 3345399 add native documentation support test
new b3db331 add native interactive support test
new 6c9acd1 single function native compilation doc + interactive
support + tests
new 54e0b11 style nit
new 26ce566 use safe alloca in declare_imported_func
new 8234a62 stringify within macro ADD_IMPORTED
new 740462d remove ifdef where unnecessary and add where they are
new 694ece7 reworking relocation mechanism to use one single table
new ac08a7f clean-up old function relocation code
new d0173ec remove advice dependency
new d0fcb15 fix comp--register-subr
new a104053 malloc instead of static alloc into emit_ctxt_code
new 88671e6 make use of ARRAYELTS macro where possible
new ee4feb0 fix some nits
new a647a97 better scratch slot support
new b3cbdfc add basic compilation unit into structure
new 4496a3f initial compilation unit as object add
new f0671c6 make dynlib_close active code
new 9a8f33f introduce SUBRP_NATIVE_COMPILEDP
new 54677f9 split out copy_file_fd
new 79436f0 use memory mapped file for loading elns
new c5bb62f initial gc support
new 4c8b465 some rename on compilation unit struct
new a88e5f0 better compilation unit definition
new 42362d9 remove load_handle_stack and use the implementation one
new 5ecb71c clean-up unnecessary function prevent_gc
new b275ddd rationalize load functions
new 5dae0a9 add support for native comp unit to type-of
new 0a74771 fix invalid read in fill_freloc
new fd3c00f add subr-native-compilation-unit primitive
new 1263961 better printing for native compilation unit
new df0a754 add native-comp-unit-file primitive
new ca8d5ed add disassemble support for native compiled functions
new 8b1d9b8 add initial native compiler pdumper support
new df62baa Revert "use memory mapped file for loading elns"
new 080dacd Revert "split out copy_file_fd"
new 36ab5c6 some more pdumper integration support
new 15ac087 add pdump relocation phases
new b6d6e7f add native compilation unit pdumper support
new 568883c add native elisp subr pdumper support
new 2ccce1b some style fixes
new ef59b67 mitigate ifdef proliferation
new e678021 add batch-native-compile
new cedc192 add elns to the gitignore
new 44db9b9 never load a compilation unit without filling the func
link table
new 726d8c5 move late relocs after emacs relocations
new 5f63ac2 always fill freloc before compiling too
new 4beb850 add native support to the build system
new 9514dbf adjust max_specpdl_size to sustain bootstrap
new fdb31d6 fix naming for predicate SUBR_NATIVE_COMPILEDP
new 92e285f set disassemble buffer in read only
new a5a1b53 do not force function inlining
new f4cb9cc rename IMPORTED_FUNC_LINK_TABLE -> FUNC_LINK_TABLE_SYM
new 1c08dc8 some rework to please --enable-check-lisp-object-type
new c00236a sign and check function link table
new 0bb5a47 move LATE_RELOCS just before VERY_LATE_RELOCS
new 00f7fd7 fix non local propagation handling
new e666bf7 add customize comp-never-optimize-functions
new 037b989 add batch-byte-native-compile-for-bootstrap
new 2875340 fix nit
new 4946ed4 rework build system for one pass
new f029050 disable propagation when non locals are present
new 976b7fc fix aliased function names trampoline removal
new 6c77a9e do not crash compilation trying to optimize wrong code
new b18f92a rework predicates to be homogeneous
new c4b8868 compile each eln to a temporary one and rename it as last
new 498468a make build system configurable again
new 3ba1b52 check for libgccjit lib to be reachable in configure.ac
new 11192b2 make standard emacs compilable again
new dd66ef5 set nativecomp configure option off by default
new b0a2838 Revert "Pacify gcc -Wunused-function on Ubuntu 18.04.3"
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch feature/native-comp created (now b0a2838),
Andrea Corallo <=