summaryrefslogtreecommitdiff
path: root/erts/emulator/hipe/hipe_x86_bifs.m4
Commit message (Collapse)AuthorAgeFilesLines
* erts: Cleanup removal of non-smp emulatorsLukas Larsson2017-07-171-1/+1
|
* Support for dirty BIFsRickard Green2017-01-121-8/+4
|
* hipe: Fix bug in trap frame allocation wrappersMagnus Lång2016-06-301-1/+2
| | | | | | | | | | | | | | | The trap frame allocation wrappers occasionally call the garbage collector, even though built-in functions are not supposed to. On non-{x86,amd64} platforms, HiPE was optimising the BIF wrapper interface on the basis that BIFs do not GC. So, when hipe_reserve_beam_trap_frame called the garbage collector, the state in the PCB was stale and corruption happened. Now, these particular BIFs are reclassified as GC BIFs. Unfortunately, in order to do that we needed to introduce a gc_bif_interface_3 macro in every hipe_$ARCH_bifs.m4 file.
* update copyright-yearHenrik Nord2016-03-151-1/+1
|
* Change license text to APLv2Bruce Yinhe2015-06-181-9/+10
|
* erts/hipe: unbreak arity 4 BIFsMikael Pettersson2015-04-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | This fixes arity 4 BIF support in HiPE, following its introduction on master (OTP 18) via the nox/ets-update_counter-4 merge. - define standard_bif_interface_4, nbif_4_gc_after_bif, and nbif_4_simple_exception on ARM: unbreaks the build on ARM - remove bogus stack re-alignment from standard_bif_interface_4 on AMD64: for 4-arg BIFs the stack is already aligned, and the code would misalign the C stack which violates the ABI and may cause alignment faults in vectorized code - the nbif_4_simple_exception OPD name on PPC64 was incorrectly using the nbif_3_simple_exception OPD name: this would have caused a multiple definition error in the assembler or linker In addition there are a few cleanups: - fix standard_bif_interface_N comment on x86 - fix standard_bif_interface_4 comment on SPARC - separate nbif_N_simple_exception blocks by empty lines on PPC, like on ARM, to clearly show which things belong together - fix standard_bif_interface_N comment on ARM - fix standard_bif_interface_4 on AMD64 to match the indentation and spacing conventions of the rest of that file
* Allow 4-ary BIFsAnthony Ramine2015-02-241-0/+38
|
* erts: Extend usage of ASM macro to avoid including asm macros in C codeSverker Eriksson2014-10-241-0/+1
| | | | | | and reduce the probability of macro name collisions Catalyst: ppc macro "r0" conflicting with local variable in external.c
* Update copyright yearsBjörn-Egil Dahlberg2012-11-231-1/+1
|
* erts: Change assembler comment for hipe on x86 and amd64Sverker Eriksson2012-11-131-5/+5
| | | | Previously done for ppc in c469d8ce14e9544a297d9af48c9da43137122d9a
* hipe,erts: Allow hipe without floating point exceptionsSverker Eriksson2011-11-171-0/+2
|
* erts-hipe: Enable debug compiled hipe-VM with lock checkerSverker Eriksson2011-10-261-4/+11
| | | | | Add hipe_debug_bif_wrapper() as a wrapper for every BIF called by native code.
* erts-hipe: Rename fail_bif_interface_0 to standard_bif_interface_0Sverker Eriksson2011-10-261-8/+3
|
* erts-hipe: Adapt generated BIF wrappers for new calling conventionSverker Eriksson2011-10-261-6/+13
| | | | | | | | x86 and amd64: Push BIF__ARGS array on C-stack. ppc, sparc and arm: Write BIF__ARGS array to P->def_arg_reg[] Just the simplest solution with limited assembler knowledge, probably room for improvements.
* erts-hipe: Remove obscuring macros in generated assembler codeSverker Eriksson2011-10-261-3/+7
| | | | | | No semantic change. Just easier to debug when jumps are spelled out and not obscured by yet another layer of macros.
* Cleanup tagsKostis Sagonas2011-02-141-8/+6
|
* The R13B03 release.OTP_R13B03Erlang/OTP2009-11-201-0/+635