Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use AAPCS calling convention on all aeabi intrinsics #141

Merged
merged 3 commits into from
Feb 8, 2017
Merged

use AAPCS calling convention on all aeabi intrinsics #141

merged 3 commits into from
Feb 8, 2017

Commits on Feb 7, 2017

  1. use AAPCS calling convention on all aeabi intrinsics

    also, on ARM, inline(always) the actual implementation of the intrinsics so we
    end with code like this:
    
    ```
    00000000 <__aeabi_dadd>:
        (implementation here)
    ```
    
    instead of "trampolines" like this:
    
    ```
    00000000 <__aeabi_dadd>:
        (shuffle registers)
        (call __adddf3)
    
    00000000 <__adddf3>:
        (implementation here)
    ```
    
    closes #116
    Jorge Aparicio committed Feb 7, 2017
    Configuration menu
    Copy the full SHA
    dfa7b16 View commit details
    Browse the repository at this point in the history
  2. ARM: keep some non-aeabi symbols around

    - multi3: there's no aeabi equivalent
    - divmod{s,d}i4: these are directly called by __aeabi_{l,i}divmod
    - add{s,d}f3: required by the C sub{s,d}f3 implementation
    
    but make sure they also use the AAPCS calling convention
    Jorge Aparicio committed Feb 7, 2017
    Configuration menu
    Copy the full SHA
    57085be View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2017

  1. adjust the check! macro to accept AAPCS intrinsics

    Jorge Aparicio committed Feb 8, 2017
    Configuration menu
    Copy the full SHA
    47b45d1 View commit details
    Browse the repository at this point in the history