ObjFW  History of src/invocation/invoke-x86_64.m of 03e111614e7c6c25

History of the file that is called src/invocation/invoke-x86_64.m at check-in 03e111614e7c6c25

2022-07-15
18:09
Deleted: Merge trunk into branch "wii-u" (check-in: [a2973418de] user: js, branch: wii-u, size: 0)
2021-04-30
22:26
[f56f3831ec] part of check-in [efca87b509] Merge trunk into branch "invoke-invocation" (check-in: [efca87b509] user: js, branch: invoke-invocation, size: 11074) [annotate] [blame] [check-ins using] [diff]
2021-04-07
21:29
Deleted: Remove incomplete -[OFInvocation invoke] support

It has been moved to the "invoke-invocation" branch until it is ready. (check-in: [c71d3d9433] user: js, branch: trunk, size: 0)

2021-01-02
22:04
[e0c747a83e] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 11131) [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
[ab1dc9bdb2] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 11220) [annotate] [blame] [check-ins using] [diff]
2019-09-29
15:25
Deleted: Remove incomplete -[OFInvocation invoke] support (check-in: [fc521f01cc] user: js, branch: 1.0, size: 0)
2019-03-08
00:35
[5df8286fd6] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 11217) [annotate] [blame] [check-ins using] [diff]
2019-02-18
01:37
[47d3793287] part of check-in [780d096371] invocation: Make all offsets constants

This makes the assembly much more readable.

No difference between disassembled .o file before and after. (check-in: [780d096371] user: js, branch: trunk, size: 11223) [annotate] [blame] [check-ins using] [diff]

2019-01-03
19:13
[9312a70bd8] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 11301) [annotate] [blame] [check-ins using] [diff]
2018-11-26
22:08
[85bd746449] part of check-in [f133454532] invocation: Add a shared header for some defines (check-in: [f133454532] user: js, branch: trunk, size: 11295) [annotate] [blame] [check-ins using] [diff]
22:04
[d401c0dd7a] part of check-in [7c1614461e] OFInvocation: Fix void return (check-in: [7c1614461e] user: js, branch: trunk, size: 11406) [annotate] [blame] [check-ins using] [diff]
2018-02-11
14:53
[6c3222c447] part of check-in [869f4db107] Remove useless #ifndef __STDC_NO_COMPLEX__ (check-in: [869f4db107] user: js, branch: trunk, size: 11373) [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
[68cef0f39f] part of check-in [7e5c81e186] Update copyright notice (check-in: [7e5c81e186] user: js, branch: trunk, size: 11478) [annotate] [blame] [check-ins using] [diff]
2017-10-15
23:05
[4cabeb7ba5] part of check-in [4465a415f1] Two minor cleanups - no functional change (check-in: [4465a415f1] user: js, branch: trunk, size: 11455) [annotate] [blame] [check-ins using] [diff]
2017-09-21
21:45
[3e46ff1eb1] part of check-in [af2a5c852b] invoke-x86_64.m: Fix passing of floats (check-in: [af2a5c852b] user: js, branch: trunk, size: 11453) [annotate] [blame] [check-ins using] [diff]
20:25
[f312bfc975] part of check-in [645b4a9e1d] invoke-x86_64.m: Minor code style change (check-in: [645b4a9e1d] user: js, branch: trunk, size: 11448) [annotate] [blame] [check-ins using] [diff]
2017-09-17
10:48
[036198eaf0] part of check-in [4628f6bbff] invoke-x86_64.m: Support complex long double (check-in: [4628f6bbff] user: js, branch: trunk, size: 11370) [annotate] [blame] [check-ins using] [diff]
03:18
[567ef57186] part of check-in [b35074d74a] invoke-x86_64.m: Support complex {float,double} (check-in: [b35074d74a] user: js, branch: trunk, size: 10499) [annotate] [blame] [check-ins using] [diff]
02:20
[2253358a2d] part of check-in [15eed89995] invoke-x86_64.m: Change __int128 handling

When using GCC (and thus conforming to the ABI), do not pass the low
half of an __int128 in a register while passing the high of an __int128
on the stack.

For Clang, just handle it as two longs. (check-in: [15eed89995] user: js, branch: trunk, size: 8224) [annotate] [blame] [check-ins using] [diff]

2017-09-16
20:20
[1d2004b374] part of check-in [c14dfdc8e5] invoke-x86_64.m: Correctly align __int128 for GCC

GCC correctly aligns __int128 with 16 bytes on the stack, like specified
in the ABI, while Clang does not.

Unfortunately, this means that GCC and Clang have a different ABI and
thus are incompatible as soon as code uses __int128. (check-in: [c14dfdc8e5] user: js, branch: trunk, size: 7963) [annotate] [blame] [check-ins using] [diff]

20:05
[03bcbc3b9d] part of check-in [2379608969] invoke-x86_64.m: Fix compilation with GCC (check-in: [2379608969] user: js, branch: trunk, size: 7146) [annotate] [blame] [check-ins using] [diff]
2017-09-15
00:03
[75aba7c79f] part of check-in [1b96a21136] invoke-x86_64.m: Add support for __int128 (check-in: [1b96a21136] user: js, branch: trunk, size: 7129) [annotate] [blame] [check-ins using] [diff]
2017-09-14
21:51
[8ed55a5c76] part of check-in [d6e5e6beb3] apple-call-x86_64.S: Add support for stret and jmp

Jumping is useful in case of forwarding, so that the return value does
not need to be put back into an OFInvocation and then from an
OFInvocation back into registers. (check-in: [d6e5e6beb3] user: js, branch: trunk, size: 6904) [annotate] [blame] [check-ins using] [diff]

2017-09-12
23:49
[7689390f4e] part of check-in [8417c40405] invoke-x86_64.m: Minor refactor

This makes it easier to add more complex types. (check-in: [8417c40405] user: js, branch: trunk, size: 6862) [annotate] [blame] [check-ins using] [diff]

2017-09-11
20:32
[4f0bfb5114] part of check-in [d0878b2eae] invoke-x86_64.m: Support for long double (check-in: [d0878b2eae] user: js, branch: trunk, size: 7014) [annotate] [blame] [check-ins using] [diff]
15:37
[38c3b949a2] part of check-in [0bf9fafd47] invoke-x86_64.m: Support passing args via stack (check-in: [0bf9fafd47] user: js, branch: trunk, size: 5616) [annotate] [blame] [check-ins using] [diff]
11:44
[abe678c9cf] part of check-in [bbeb71e81d] invoke-x86_64: Set %al to number of SSE regs used (check-in: [bbeb71e81d] user: js, branch: trunk, size: 4521) [annotate] [blame] [check-ins using] [diff]
02:05
Added: [ed5f594770] part of check-in [95797a4d1c] OFInvocation: Initial support for invoking

So far this is only for x86_64 with the Apple runtime and does not yet
support all types. It also does not yet support passing arguments via
the stack. (check-in: [95797a4d1c] user: js, branch: trunk, size: 4427) [annotate] [blame] [check-ins using]