This is the mail archive of the gcc-patches@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]

Re: [PATCH, take 2] implement drem() and fmod() as built-in x87intrinsic


Martin Reinecke wrote:


bugtest.c:6: error: unrecognizable insn: (insn 17 16 18 1 (set (reg:CC 17 flags) (unspec:CC [ (reg:HI 65) ] 25)) -1 (insn_list 16 (nil)) (expr_list:REG_DEAD (reg:HI 65) (nil))) bugtest.c:6: internal compiler error: in extract_insn, at recog.c:2074 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions.


Failing instruction, x86_sahf_1, is defined in config/i386/i386.md as:

(define_insn "x86_sahf_1"
 [(set (reg:CC 17)
   (unspec:CC [(match_operand:HI 0 "register_operand" "a")] UNSPEC_SAHF))]
 "!TARGET_64BIT"
 "sahf"
 [(set_attr "length" "1")
  (set_attr "athlon_decode" "vector")
  (set_attr "mode" "SI")])

I don't know, why it has "!TARGET_64BIT" constraint, could you just remove !TARGET_64BIT?

Should I file a PR for this?

No, we have just figure out, why x86_sahf_1 has !TARGET_64BIT constraint.


P.S.: Thanks a lot for implementing all these new math builtins in gcc; they give a great
performance boost for our numerical simulations!

Thanks, nice to hear this!


Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]