ucmpdi2.c 568 B

1234567891011121314151617181920212223
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. */
  4. #include <linux/module.h>
  5. #include <linux/libgcc.h>
  6. word_type notrace __ucmpdi2(unsigned long long a, unsigned long long b)
  7. {
  8. const DWunion au = {.ll = a};
  9. const DWunion bu = {.ll = b};
  10. if ((unsigned int) au.s.high < (unsigned int) bu.s.high)
  11. return 0;
  12. else if ((unsigned int) au.s.high > (unsigned int) bu.s.high)
  13. return 2;
  14. if ((unsigned int) au.s.low < (unsigned int) bu.s.low)
  15. return 0;
  16. else if ((unsigned int) au.s.low > (unsigned int) bu.s.low)
  17. return 2;
  18. return 1;
  19. }
  20. EXPORT_SYMBOL(__ucmpdi2);