.globl rw_copy_check_uvector .type rw_copy_check_uvector, @function rw_copy_check_uvector: .LFB2683: .loc 1 773 0 stwu 1,-32(1) #,, .LCFI142: mflr 0 #, .LCFI143: stmw 27,12(1) #, .LCFI144: .loc 1 783 0 mr. 27,5 # nr_segs, nr_segs .loc 1 773 0 mr 31,3 # type, type stw 0,36(1) #, .LCFI145: .loc 1 773 0 mr 30,4 # uvector, uvector mr 29,8 # ret_pointer, ret_pointer .loc 1 776 0 mr 28,7 # iov, fast_pointer .loc 1 784 0 li 0,0 # ret, .loc 1 783 0 beq- 0,.L495 # .loc 1 792 0 cmplwi 7,27,1024 #, tmp151, nr_segs .loc 1 793 0 li 0,-22 # ret, .loc 1 792 0 bgt- 7,.L495 # .loc 1 796 0 cmplw 7,27,6 # fast_segs, tmp152, nr_segs ble- 7,.L496 # .LBB1516: .LBB1517: .file 21 "./include/linux/slab.h" .loc 21 495 0 lis 4,0x140 # tmp175, slwi 3,27,3 #, nr_segs, ori 4,4,192 #,, tmp175, bl __kmalloc # .LBE1517: .LBE1516: .loc 1 799 0 li 0,-12 # ret, .loc 1 798 0 mr. 28,3 # iov, beq- 0,.L495 # .L496: .loc 1 803 0 slwi 27,27,3 # n, nr_segs, .LBB1518: .LBB1519: .loc 19 153 0 mr 3,28 #, iov mr 4,30 #, uvector mr 5,27 #, n bl _copy_from_user # .LBE1519: .LBE1518: .loc 1 804 0 li 0,-14 # ret, .loc 1 803 0 cmpwi 7,3,0 #, tmp156, bne- 7,.L495 # .LBB1520: .loc 1 833 0 addi 27,27,-8 # tmp172, n, .loc 1 828 0 cmpwi 6,31,0 #, tmp168, type .loc 1 833 0 srwi 27,27,3 # tmp173, tmp172, lis 6,0x7fff # tmp174, addi 27,27,1 #, tmp173, .loc 1 829 0 mr 5,2 # current.121, current .loc 1 833 0 mtctr 27 # tmp170, .loc 1 829 0 li 8,0 # ivtmp.528, li 0,0 # ret, .loc 1 833 0 ori 6,6,61440 #, tmp169, tmp174, .L499: .loc 1 819 0 mr 11,28 # D.40034, iov lwzux 10,11,8 # MEM[base: iov_4, index: ivtmp.528_176, offset: 0B], buf .loc 1 820 0 lwz 9,4(11) # MEM[base: D.40034_183, offset: 4B], len .loc 1 824 0 cmpwi 7,9,0 #, tmp157, len blt- 7,.L505 # .loc 1 828 0 blt- 6,.L497 # .loc 1 829 0 lwz 7,1128(5) # current.121_33->thread.fs.seg, D.36573 cmplw 1,10,7 # D.36573, tmp159, buf bgt- 1,.L507 # .loc 1 829 0 is_stmt 0 discriminator 1 beq- 7,.L497 # .loc 1 829 0 discriminator 4 addi 4,9,-1 # tmp161, len, subf 10,10,7 # tmp162, buf, D.36573 cmplw 7,4,10 # tmp162, tmp163, tmp161 bgt- 7,.L507 # .L497: .loc 1 833 0 is_stmt 1 subf 10,0,6 # len, ret, tmp169 cmpw 7,9,10 # len, tmp165, len ble- 7,.L498 # .loc 1 835 0 stw 10,4(11) # MEM[base: D.40034_183, offset: 4B], len mr 9,10 # len, len .L498: .loc 1 837 0 add 0,0,9 # ret, ret, len addi 8,8,8 # ivtmp.528, ivtmp.528, .LBE1520: .loc 1 818 0 bdnz .L499 # b .L495 # .L505: .LBB1521: .loc 1 825 0 li 0,-22 # ret, b .L495 # .L507: .loc 1 830 0 li 0,-14 # ret, .L495: .LBE1521: .loc 1 842 0 addi 11,1,32 #,, .loc 1 840 0 stw 28,0(29) # *ret_pointer_53(D), iov .loc 1 842 0 mr 3,0 #, ret b _restgpr_27_x # .LFE2683: .size rw_copy_check_uvector,.-rw_copy_check_uvector