Skip to content

Support f16 and f128 #461

Closed
Closed

Description

@tgross35

As of rust-lang/rust#121728, the backends now have stubs for f16 and f128: https://github.com/rust-lang/rust/blob/6cbf0926d54c80ea6d15df333be9281f65bbeb36/compiler/rustc_codegen_gcc/src/type_.rs#L123-L137.

It will be a while before these codepaths can even be exercised since the frontend isn't hooked up yet, (frontend is done now) but at some point this should be changed to either gracefully fail or do the right thing.

Activity

  1. tgross35 commented on Jun 24, 2024

    @tgross35
    MemberAuthor

    Hey @zedar I saw you did rust-lang/gcc#47 and rust-lang/gccjit.rs#33 for this. Is anything else needed in the GCC backend, or do the unimplemented!s at

    fn type_f16(&self) -> Type<'gcc> {
    unimplemented!("f16_f128")
    }
    fn type_f32(&self) -> Type<'gcc> {
    self.float_type
    }
    fn type_f64(&self) -> Type<'gcc> {
    self.double_type
    }
    fn type_f128(&self) -> Type<'gcc> {
    unimplemented!("f16_f128")
    }
    just need to be updated?

  2. antoyo commented on Jun 25, 2024

    @antoyo
    Contributor

    The support was merged recently (those were updated and are not unimplemented!() anymore).
    It might require a sync for it to work properly, but the current sync is very difficult to do, so it will take more time before it's ready.

  3. tgross35 commented on Jun 25, 2024

    @tgross35
    MemberAuthor

    Oh I see they were done in antoyo#17, awesome!

    I don't have any need for it, just been chasing down the f16_f128 FIXMEs and unimplemented!s.

  4. tgross35 commented on Jun 25, 2024

    @tgross35
    MemberAuthor

    (chances are you know this already, but Miri is using https://github.com/josh-project/josh for supposedly easier syncs, I think Clippy is looking to switch to it too)

  5. tgross35 commented on Nov 1, 2024

    @tgross35
    MemberAuthor

    I think this has been synced in by now right? A simple example seems to work https://godbolt.org/z/GqWvrza5e.

    Many thanks for making this happen!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions