aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2021-09-03 08:41:06 +0100
committerIain Sandoe <iain@sandoe.co.uk>2021-09-03 16:25:40 +0100
commit3ccb523bdd78e6ba3c133064be90cdf19dcbf896 (patch)
treec6fd642c545faa65c54c5b1205e964024b2d2000 /gcc
parent01005550377ff17716e6ad57c62df726877ab79f (diff)
downloadgcc-3ccb523bdd78e6ba3c133064be90cdf19dcbf896.zip
gcc-3ccb523bdd78e6ba3c133064be90cdf19dcbf896.tar.gz
gcc-3ccb523bdd78e6ba3c133064be90cdf19dcbf896.tar.bz2
libgcc, soft-float: Fix strong_alias macro use for Darwin.
Darwin does not support strong symbol aliases and a work- around is provided in sfp-machine.h where a second function is created that simply calls the original. However this needs the arguments to the synthesized function to track the mode of the original function. So the fix here is to match known floating point modes from the incoming function and apply the one found to the new function args. The matching is highly specific to the current set of modes and will need adjusting should more cases be added. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> libgcc/ChangeLog: * config/i386/sfp-machine.h (alias_HFtype, alias_SFtype alias_DFtype, alias_TFtype): New. (ALIAS_SELECTOR): New. (strong_alias): Use __typeof and a _Generic selector to provide the type to the synthesized function.
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions