This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hello, Ada builds are currently failing on s390x due to missing __divti3. Now, I guess we could add 128-bit division routines to libgcc. However, the question is whether this should really be needed. What appears to happen is that the Ada source in question defines a variable-sized object with non-standard alignment requirements, and Ada reflects this by building a DECL_SIZE_UNIT tree containing various mult_expr and div_expr nodes. As alignment is counted in bits, those have type bit_size_type, which on 64-bit platforms corresponds to TImode. When expanding that tree, the backend emits calls to __divti3. However, I'm wondering: - does bit_size_type really need to be TImode - if so, shouldn't these special cases be implemented more efficiently somewhere (we divide by an integer constant 8 here) - in general, are we really supposed to need TImode division How does this work on other 64-bit platforms? Mit freundlichen Gruessen / Best Regards Ulrich Weigand -- Dr. Ulrich Weigand Linux for S/390 Design & Development IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, 71032 Boeblingen Phone: +49-7031/16-3727 --- Email: Ulrich dot Weigand at de dot ibm dot com
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |