home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #23 / NN_1992_23.iso / spool / gnu / gcc / help / 2330 < prev    next >
Encoding:
Text File  |  1992-10-15  |  1.3 KB  |  42 lines

  1. Newsgroups: gnu.gcc.help
  2. Path: sparky!uunet!convex!linac!pacific.mps.ohio-state.edu!cis.ohio-state.edu!stb.INfo.COM!michael
  3. From: michael@stb.INfo.COM (Michael Gersten)
  4. Subject: Help needed (very specific -- stack push recognition)
  5. Message-ID: <m0mfYTb-0005OXC@stb.info.com>
  6. Sender: daemon@cis.ohio-state.edu
  7. Organization: GNUs Not Usenet
  8. Distribution: gnu
  9. Date: Thu, 15 Oct 1992 16:55:00 GMT
  10. Lines: 30
  11.  
  12.  
  13. I'm having trouble with recognizing a stack push instruction.
  14.  
  15. Here's the first pattern in my md file:
  16. (define_insn ""
  17.         [ (set (mem:HI (pre_dec:HI (reg:HI 15)))
  18.                 (match_operand:HI 0 "general_operand" "r")
  19.         )]
  20.         ""
  21.         "       PSHM    %0,%0"
  22. )
  23.  
  24. And here's a couple of insn's that don't match it:
  25.  
  26. (insn 26 30 27 (set (mem:HI (pre_dec:HI (reg:HI 15)))
  27.        (reg:HI 34)) -1 (nil)
  28.    (insn_list:REG_LIBCALL 32 (nil)))
  29.  
  30. (insn 157 24 25 (set (mem:HI (pre_dec:HI (reg:HI 15)))
  31.        (reg:HI 7)) 4 {movhi} (nil)
  32.    (nil))
  33.  
  34. Q: What gives? movhi cannot handle pre_dec: the only thing that  
  35. supports it is pushing/popping the stack. Putting some test  
  36. statements in insn-recog.c shows that it's not even being  
  37. considered.
  38. --
  39.         Michael Gersten        michael@stb.info.com
  40. HELLO! I'm a signature virus! Join in the fun and copy me into yours!
  41. ex:.-1,. w $HOME/.signature
  42.