Lines Matching refs:PIC
17 ; RUN: -verify-machineinstrs | FileCheck %s --check-prefix=PIC-MIPS32R2
20 ; RUN: -verify-machineinstrs | FileCheck %s --check-prefix=PIC-MIPS32R6
23 ; RUN: -verify-machineinstrs | FileCheck %s --check-prefix=PIC-MIPS64R2
26 ; RUN: -verify-machineinstrs | FileCheck %s --check-prefix=PIC-MIPS64R6
344 ; PIC-MIPS32R2-LABEL: _Z3fooi:
345 ; PIC-MIPS32R2: # %bb.0: # %entry
346 ; PIC-MIPS32R2-NEXT: lui $2, %hi(_gp_disp)
347 ; PIC-MIPS32R2-NEXT: addiu $2, $2, %lo(_gp_disp)
348 ; PIC-MIPS32R2-NEXT: addiu $sp, $sp, -16
349 ; PIC-MIPS32R2-NEXT: .cfi_def_cfa_offset 16
350 ; PIC-MIPS32R2-NEXT: addu $2, $2, $25
351 ; PIC-MIPS32R2-NEXT: sltiu $1, $4, 7
352 ; PIC-MIPS32R2-NEXT: beqz $1, $BB0_3
353 ; PIC-MIPS32R2-NEXT: sw $4, 4($sp)
354 ; PIC-MIPS32R2-NEXT: $BB0_1: # %entry
355 ; PIC-MIPS32R2-NEXT: sll $1, $4, 2
356 ; PIC-MIPS32R2-NEXT: lw $3, %got($JTI0_0)($2)
357 ; PIC-MIPS32R2-NEXT: addu $1, $1, $3
358 ; PIC-MIPS32R2-NEXT: lw $1, %lo($JTI0_0)($1)
359 ; PIC-MIPS32R2-NEXT: addu $1, $1, $2
360 ; PIC-MIPS32R2-NEXT: jr.hb $1
361 ; PIC-MIPS32R2-NEXT: nop
362 ; PIC-MIPS32R2-NEXT: $BB0_2: # %sw.bb
363 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str)($2)
364 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str)
365 ; PIC-MIPS32R2-NEXT: b $BB0_10
366 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
367 ; PIC-MIPS32R2-NEXT: $BB0_3: # %sw.epilog
368 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.7)($2)
369 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.7)
370 ; PIC-MIPS32R2-NEXT: b $BB0_10
371 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
372 ; PIC-MIPS32R2-NEXT: $BB0_4: # %sw.bb1
373 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.1)($2)
374 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.1)
375 ; PIC-MIPS32R2-NEXT: b $BB0_10
376 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
377 ; PIC-MIPS32R2-NEXT: $BB0_5: # %sw.bb2
378 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.2)($2)
379 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.2)
380 ; PIC-MIPS32R2-NEXT: b $BB0_10
381 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
382 ; PIC-MIPS32R2-NEXT: $BB0_6: # %sw.bb3
383 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.3)($2)
384 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.3)
385 ; PIC-MIPS32R2-NEXT: b $BB0_10
386 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
387 ; PIC-MIPS32R2-NEXT: $BB0_7: # %sw.bb4
388 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.4)($2)
389 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.4)
390 ; PIC-MIPS32R2-NEXT: b $BB0_10
391 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
392 ; PIC-MIPS32R2-NEXT: $BB0_8: # %sw.bb5
393 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.5)($2)
394 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.5)
395 ; PIC-MIPS32R2-NEXT: b $BB0_10
396 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
397 ; PIC-MIPS32R2-NEXT: $BB0_9: # %sw.bb6
398 ; PIC-MIPS32R2-NEXT: lw $1, %got($.str.6)($2)
399 ; PIC-MIPS32R2-NEXT: addiu $1, $1, %lo($.str.6)
400 ; PIC-MIPS32R2-NEXT: sw $1, 8($sp)
401 ; PIC-MIPS32R2-NEXT: $BB0_10: # %return
402 ; PIC-MIPS32R2-NEXT: lw $2, 8($sp)
403 ; PIC-MIPS32R2-NEXT: jr $ra
404 ; PIC-MIPS32R2-NEXT: addiu $sp, $sp, 16
406 ; PIC-MIPS32R6-LABEL: _Z3fooi:
407 ; PIC-MIPS32R6: # %bb.0: # %entry
408 ; PIC-MIPS32R6-NEXT: lui $2, %hi(_gp_disp)
409 ; PIC-MIPS32R6-NEXT: addiu $2, $2, %lo(_gp_disp)
410 ; PIC-MIPS32R6-NEXT: addiu $sp, $sp, -16
411 ; PIC-MIPS32R6-NEXT: .cfi_def_cfa_offset 16
412 ; PIC-MIPS32R6-NEXT: addu $2, $2, $25
413 ; PIC-MIPS32R6-NEXT: sltiu $1, $4, 7
414 ; PIC-MIPS32R6-NEXT: beqz $1, $BB0_3
415 ; PIC-MIPS32R6-NEXT: sw $4, 4($sp)
416 ; PIC-MIPS32R6-NEXT: $BB0_1: # %entry
417 ; PIC-MIPS32R6-NEXT: sll $1, $4, 2
418 ; PIC-MIPS32R6-NEXT: lw $3, %got($JTI0_0)($2)
419 ; PIC-MIPS32R6-NEXT: addu $1, $1, $3
420 ; PIC-MIPS32R6-NEXT: lw $1, %lo($JTI0_0)($1)
421 ; PIC-MIPS32R6-NEXT: addu $1, $1, $2
422 ; PIC-MIPS32R6-NEXT: jr.hb $1
423 ; PIC-MIPS32R6-NEXT: nop
424 ; PIC-MIPS32R6-NEXT: $BB0_2: # %sw.bb
425 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str)($2)
426 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str)
427 ; PIC-MIPS32R6-NEXT: b $BB0_10
428 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
429 ; PIC-MIPS32R6-NEXT: $BB0_3: # %sw.epilog
430 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.7)($2)
431 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.7)
432 ; PIC-MIPS32R6-NEXT: b $BB0_10
433 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
434 ; PIC-MIPS32R6-NEXT: $BB0_4: # %sw.bb1
435 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.1)($2)
436 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.1)
437 ; PIC-MIPS32R6-NEXT: b $BB0_10
438 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
439 ; PIC-MIPS32R6-NEXT: $BB0_5: # %sw.bb2
440 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.2)($2)
441 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.2)
442 ; PIC-MIPS32R6-NEXT: b $BB0_10
443 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
444 ; PIC-MIPS32R6-NEXT: $BB0_6: # %sw.bb3
445 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.3)($2)
446 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.3)
447 ; PIC-MIPS32R6-NEXT: b $BB0_10
448 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
449 ; PIC-MIPS32R6-NEXT: $BB0_7: # %sw.bb4
450 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.4)($2)
451 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.4)
452 ; PIC-MIPS32R6-NEXT: b $BB0_10
453 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
454 ; PIC-MIPS32R6-NEXT: $BB0_8: # %sw.bb5
455 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.5)($2)
456 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.5)
457 ; PIC-MIPS32R6-NEXT: b $BB0_10
458 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
459 ; PIC-MIPS32R6-NEXT: $BB0_9: # %sw.bb6
460 ; PIC-MIPS32R6-NEXT: lw $1, %got($.str.6)($2)
461 ; PIC-MIPS32R6-NEXT: addiu $1, $1, %lo($.str.6)
462 ; PIC-MIPS32R6-NEXT: sw $1, 8($sp)
463 ; PIC-MIPS32R6-NEXT: $BB0_10: # %return
464 ; PIC-MIPS32R6-NEXT: lw $2, 8($sp)
465 ; PIC-MIPS32R6-NEXT: jr $ra
466 ; PIC-MIPS32R6-NEXT: addiu $sp, $sp, 16
468 ; PIC-MIPS64R2-LABEL: _Z3fooi:
469 ; PIC-MIPS64R2: # %bb.0: # %entry
470 ; PIC-MIPS64R2-NEXT: daddiu $sp, $sp, -16
471 ; PIC-MIPS64R2-NEXT: .cfi_def_cfa_offset 16
472 ; PIC-MIPS64R2-NEXT: lui $1, %hi(%neg(%gp_rel(_Z3fooi)))
473 ; PIC-MIPS64R2-NEXT: daddu $1, $1, $25
474 ; PIC-MIPS64R2-NEXT: daddiu $2, $1, %lo(%neg(%gp_rel(_Z3fooi)))
475 ; PIC-MIPS64R2-NEXT: dext $3, $4, 0, 32
476 ; PIC-MIPS64R2-NEXT: sltiu $1, $3, 7
477 ; PIC-MIPS64R2-NEXT: beqz $1, .LBB0_3
478 ; PIC-MIPS64R2-NEXT: sw $4, 4($sp)
479 ; PIC-MIPS64R2-NEXT: .LBB0_1: # %entry
480 ; PIC-MIPS64R2-NEXT: dsll $1, $3, 3
481 ; PIC-MIPS64R2-NEXT: ld $3, %got_page(.LJTI0_0)($2)
482 ; PIC-MIPS64R2-NEXT: daddu $1, $1, $3
483 ; PIC-MIPS64R2-NEXT: ld $1, %got_ofst(.LJTI0_0)($1)
484 ; PIC-MIPS64R2-NEXT: daddu $1, $1, $2
485 ; PIC-MIPS64R2-NEXT: jr.hb $1
486 ; PIC-MIPS64R2-NEXT: nop
487 ; PIC-MIPS64R2-NEXT: .LBB0_2: # %sw.bb
488 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str)($2)
489 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str)
490 ; PIC-MIPS64R2-NEXT: b .LBB0_10
491 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
492 ; PIC-MIPS64R2-NEXT: .LBB0_3: # %sw.epilog
493 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.7)($2)
494 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.7)
495 ; PIC-MIPS64R2-NEXT: b .LBB0_10
496 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
497 ; PIC-MIPS64R2-NEXT: .LBB0_4: # %sw.bb1
498 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.1)($2)
499 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.1)
500 ; PIC-MIPS64R2-NEXT: b .LBB0_10
501 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
502 ; PIC-MIPS64R2-NEXT: .LBB0_5: # %sw.bb2
503 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.2)($2)
504 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.2)
505 ; PIC-MIPS64R2-NEXT: b .LBB0_10
506 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
507 ; PIC-MIPS64R2-NEXT: .LBB0_6: # %sw.bb3
508 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.3)($2)
509 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.3)
510 ; PIC-MIPS64R2-NEXT: b .LBB0_10
511 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
512 ; PIC-MIPS64R2-NEXT: .LBB0_7: # %sw.bb4
513 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.4)($2)
514 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.4)
515 ; PIC-MIPS64R2-NEXT: b .LBB0_10
516 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
517 ; PIC-MIPS64R2-NEXT: .LBB0_8: # %sw.bb5
518 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.5)($2)
519 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.5)
520 ; PIC-MIPS64R2-NEXT: b .LBB0_10
521 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
522 ; PIC-MIPS64R2-NEXT: .LBB0_9: # %sw.bb6
523 ; PIC-MIPS64R2-NEXT: ld $1, %got_page(.L.str.6)($2)
524 ; PIC-MIPS64R2-NEXT: daddiu $1, $1, %got_ofst(.L.str.6)
525 ; PIC-MIPS64R2-NEXT: sd $1, 8($sp)
526 ; PIC-MIPS64R2-NEXT: .LBB0_10: # %return
527 ; PIC-MIPS64R2-NEXT: ld $2, 8($sp)
528 ; PIC-MIPS64R2-NEXT: jr $ra
529 ; PIC-MIPS64R2-NEXT: daddiu $sp, $sp, 16
531 ; PIC-MIPS64R6-LABEL: _Z3fooi:
532 ; PIC-MIPS64R6: # %bb.0: # %entry
533 ; PIC-MIPS64R6-NEXT: daddiu $sp, $sp, -16
534 ; PIC-MIPS64R6-NEXT: .cfi_def_cfa_offset 16
535 ; PIC-MIPS64R6-NEXT: lui $1, %hi(%neg(%gp_rel(_Z3fooi)))
536 ; PIC-MIPS64R6-NEXT: daddu $1, $1, $25
537 ; PIC-MIPS64R6-NEXT: daddiu $2, $1, %lo(%neg(%gp_rel(_Z3fooi)))
538 ; PIC-MIPS64R6-NEXT: dext $3, $4, 0, 32
539 ; PIC-MIPS64R6-NEXT: sltiu $1, $3, 7
540 ; PIC-MIPS64R6-NEXT: beqz $1, .LBB0_3
541 ; PIC-MIPS64R6-NEXT: sw $4, 4($sp)
542 ; PIC-MIPS64R6-NEXT: .LBB0_1: # %entry
543 ; PIC-MIPS64R6-NEXT: dsll $1, $3, 3
544 ; PIC-MIPS64R6-NEXT: ld $3, %got_page(.LJTI0_0)($2)
545 ; PIC-MIPS64R6-NEXT: daddu $1, $1, $3
546 ; PIC-MIPS64R6-NEXT: ld $1, %got_ofst(.LJTI0_0)($1)
547 ; PIC-MIPS64R6-NEXT: daddu $1, $1, $2
548 ; PIC-MIPS64R6-NEXT: jr.hb $1
549 ; PIC-MIPS64R6-NEXT: nop
550 ; PIC-MIPS64R6-NEXT: .LBB0_2: # %sw.bb
551 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str)($2)
552 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str)
553 ; PIC-MIPS64R6-NEXT: b .LBB0_10
554 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
555 ; PIC-MIPS64R6-NEXT: .LBB0_3: # %sw.epilog
556 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.7)($2)
557 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.7)
558 ; PIC-MIPS64R6-NEXT: b .LBB0_10
559 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
560 ; PIC-MIPS64R6-NEXT: .LBB0_4: # %sw.bb1
561 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.1)($2)
562 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.1)
563 ; PIC-MIPS64R6-NEXT: b .LBB0_10
564 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
565 ; PIC-MIPS64R6-NEXT: .LBB0_5: # %sw.bb2
566 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.2)($2)
567 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.2)
568 ; PIC-MIPS64R6-NEXT: b .LBB0_10
569 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
570 ; PIC-MIPS64R6-NEXT: .LBB0_6: # %sw.bb3
571 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.3)($2)
572 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.3)
573 ; PIC-MIPS64R6-NEXT: b .LBB0_10
574 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
575 ; PIC-MIPS64R6-NEXT: .LBB0_7: # %sw.bb4
576 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.4)($2)
577 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.4)
578 ; PIC-MIPS64R6-NEXT: b .LBB0_10
579 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
580 ; PIC-MIPS64R6-NEXT: .LBB0_8: # %sw.bb5
581 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.5)($2)
582 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.5)
583 ; PIC-MIPS64R6-NEXT: b .LBB0_10
584 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
585 ; PIC-MIPS64R6-NEXT: .LBB0_9: # %sw.bb6
586 ; PIC-MIPS64R6-NEXT: ld $1, %got_page(.L.str.6)($2)
587 ; PIC-MIPS64R6-NEXT: daddiu $1, $1, %got_ofst(.L.str.6)
588 ; PIC-MIPS64R6-NEXT: sd $1, 8($sp)
589 ; PIC-MIPS64R6-NEXT: .LBB0_10: # %return
590 ; PIC-MIPS64R6-NEXT: ld $2, 8($sp)
591 ; PIC-MIPS64R6-NEXT: jr $ra
592 ; PIC-MIPS64R6-NEXT: daddiu $sp, $sp, 16