This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU/EG: Add a new FeatureFMA and use it to selectively enable FMA instruction
ClosedPublic

Authored by jvesely on Nov 30 2017, 5:09 PM.

Diff Detail

Repository
rL LLVM

Event Timeline

jvesely created this revision.Nov 30 2017, 5:09 PM
arsenm accepted this revision.Dec 1 2017, 8:39 AM

LGTM

lib/Target/AMDGPU/R600ISelLowering.cpp
214–217 ↗(On Diff #125057)

There's not much point in doing this since it will just turn into an unsupported libcall

This revision is now accepted and ready to land.Dec 1 2017, 8:39 AM
arsenm added inline comments.Dec 1 2017, 8:40 AM
lib/Target/AMDGPU/R600Instructions.td
989 ↗(On Diff #125057)

I'm somewhat surprised this works. I would expect you need to do

{

let OtherPredicates = ..

}

inside the class body, since the let block isn't around the instantiations of this.

jvesely updated this revision to Diff 125404.Dec 4 2017, 12:54 PM
jvesely marked 2 inline comments as done.

v2: fix predicate setting for FMA_Common

lib/Target/AMDGPU/R600ISelLowering.cpp
214–217 ↗(On Diff #125057)

it produces an error instead of assertion failure, so I can use 'not llc' in the test

This revision was automatically updated to reflect the committed changes.