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

[Bug other/70078] New: gccint: define_split "not" allowed to create pseudos


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70078

            Bug ID: 70078
           Summary: gccint: define_split "not" allowed to create pseudos
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: other
          Assignee: unassigned at gcc dot gnu.org
          Reporter: vogt at linux dot vnet.ibm.com
  Target Milestone: ---

The section "Defining How to Split Instructions" in the gccint manual claims

  The preparation-statements are similar to those statements that are
  specified for define_expand.
  ...
  Unlike those in define_expand, however, these statements must not
  generate any new pseudo-registers.  Once reload has completed, they
  also must not allocate any space in the stack frame.

Splitters seem to be allowed to generate new pseudos under certain
circumstances (some splitters call can_create_psudo_p()).  So, is this correct
instead?

  ...
  Unlike those in define_expand, however, once reload has completed
  these statements must neither generate any new pseudo-registers nor
  allocate any space in the stack frame.  This can be checked by calling
  can_create_pseudo_p.

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