RFR: aarch32: softfp patch for template interpreter
yangyongyong
yangyongyong at huawei.com
Mon Oct 17 12:53:05 UTC 2016
Hi, all,
Attached is a softfp patch for template interpreter. Two pairs of macros are defined in globalDefinitions_aarch32.hpp to isolate softfp code: HARD_FLOAT_CC/ SOFT_FLOAT_CC and HARD_FLOAT/ SOFT_FLOAT.
HARD_FLOAT_CC/SOFT_FLOAT_CC defines C calling convention. HARD_FLOAT are used to indicate that a platform can take advantage of hardfp instructions regardless of its calling convention, while SOFT_FLOAT means hardfp instructions are not supported or are disallowed to use.
Only three combinations are possible configurations for ARM platforms:
1. HARD_FLOAT/ HARD_FLOAT_CC are defined when __ARM_PCS_VFP is defined.
2. HARD_FLOAT/ SOFT_FLOAT_CC are defined when gcc runs with "-mfloat-abi=softfp" option.
3. SOFT_FLOAT/ SOFT_FLOAT_CC when gcc runs with "-mfloat-abi=soft" option.
The code of current repository is configuration 1, the attached patch is configuration 3. Both configurations are tested on a AArch64 platform (32 cores) with their respective runtime. Configuration 3 is also tested on a armv7 softfp platform with 4 cores.
We are currently working out a softfp patch for C1, it will take us a few days until it is prepared and tested.
Best regards.
More information about the aarch32-port-dev
mailing list