It looks like if the synth sees that ri and rq can change anywhere, it just gives up and decides the multiplication expression will always be 0. Whenever it decides they don't change (ie, when it works), it notes that one input to the multiplier is constant:
Info (278001): Inferred 1 megafunctions from design logic
Info (278003): Inferred multiplier megafunction ("lpm_mult") from the following logic: "iqmod:iq0|Mult0"
Info (12130): Elaborated megafunction instantiation "iqmod:iq0|lpm_mult:Mult0"
Info (12133): Instantiated megafunction "iqmod:iq0|lpm_mult:Mult0" with the following parameter:
Info (12134): Parameter "LPM_WIDTHA" = "8"
Info (12134): Parameter "LPM_WIDTHB" = "8"
Info (12134): Parameter "LPM_WIDTHP" = "16"
Info (12134): Parameter "LPM_WIDTHR" = "16"
Info (12134): Parameter "LPM_WIDTHS" = "1"
Info (12134): Parameter "LPM_REPRESENTATION" = "SIGNED"
Info (12134): Parameter "INPUT_A_IS_CONSTANT" = "YES"
Info (12134): Parameter "INPUT_B_IS_CONSTANT" = "NO"
Info (12134): Parameter "MAXIMIZE_SPEED" = "5"
Info (12131): Elaborated megafunction instantiation "iqmod:iq0|lpm_mult:Mult0|multcore:mult_core", which is child of megafunction instantiation "iqmod:iq0|lpm_mult:Mult0"
Info (12131): Elaborated megafunction instantiation "iqmod:iq0|lpm_mult:Mult0|multcore:mult_core|mpar_add:padder", which is child of megafunction instantiation "iqmod:iq0|lpm_mult:Mult0"
Info (12131): Elaborated megafunction instantiation "iqmod:iq0|lpm_mult:Mult0|multcore:mult_core|mpar_add:padder|lpm_add_sub:adder", which is child of megafunction instantiation "iqmod:iq0|lpm_mult:Mult0"
Info (12021): Found 1 design units, including 1 entities, in source file db/add_sub_qfh.tdf
Info (12023): Found entity 1: add_sub_qfh
Info (12131): Elaborated megafunction instantiation "iqmod:iq0|lpm_mult:Mult0|altshift:external_latency_ffs", which is child of megafunction instantiation "iqmod:iq0|lpm_mult:Mult0"