Skip to content
  • Michael Liao's avatar
    Skip moving call address loading into callseq when targets prefer register indirect call. · 96b42608
    Michael Liao authored
    To enable a load of a call address to be folded with that call, this
    load is moved from outside of callseq into callseq. Such a moving
    adds a non-glued node (that load) into a glued sequence. This non-glue
    load is only removed when DAG selection folds them into a memory form
    call instruction. When such instruction selection is disabled, it breaks
    DAG schedule.
    
    To prevent that, such moving is disabled when target favors register
    indirect call.
    
    Previous workaround disabling CALL32m/CALL64m insn selection is removed.
    
    llvm-svn: 178308
    96b42608
Loading