[llvm] 97f6283 - [test] Improve MC/RISCV/riscv64-64b-pcrel.s

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 6 22:00:01 PST 2023


Author: Fangrui Song
Date: 2023-03-06T21:59:56-08:00
New Revision: 97f6283c634a5797cc51ba715bbcd4662a4dc00f

URL: https://github.com/llvm/llvm-project/commit/97f6283c634a5797cc51ba715bbcd4662a4dc00f
DIFF: https://github.com/llvm/llvm-project/commit/97f6283c634a5797cc51ba715bbcd4662a4dc00f.diff

LOG: [test] Improve MC/RISCV/riscv64-64b-pcrel.s

Added: 
    

Modified: 
    llvm/test/MC/RISCV/riscv64-64b-pcrel.s

Removed: 
    


################################################################################
diff  --git a/llvm/test/MC/RISCV/riscv64-64b-pcrel.s b/llvm/test/MC/RISCV/riscv64-64b-pcrel.s
index 5f5870ee73319..51df17a4447eb 100644
--- a/llvm/test/MC/RISCV/riscv64-64b-pcrel.s
+++ b/llvm/test/MC/RISCV/riscv64-64b-pcrel.s
@@ -1,46 +1,51 @@
 # RUN: llvm-mc -triple riscv64-unknown-linux-gnu -filetype obj -o - %s \
 # RUN:   | llvm-readobj -r - | FileCheck %s
 # RUN: not llvm-mc -triple riscv64-unknown-linux-gnu -filetype obj --defsym ERR=1 -o /dev/null %s 2>&1 \
-# RUN:   | FileCheck %s --check-prefix CHECK-ERROR
+# RUN:   | FileCheck %s --check-prefix=ERROR
 
-# CHECK: Relocations [
-# CHECK:  .relasx {
-# CHECK-NEXT:    0x0 R_RISCV_ADD64 y 0x0
-# CHECK-NEXT:    0x0 R_RISCV_SUB64 x 0x0
-# CHECK:  }
-# CHECK:  .relasy {
-# CHECK-NEXT:    0x0 R_RISCV_ADD64 x 0x0
-# CHECK-NEXT:    0x0 R_RISCV_SUB64 y 0x0
-# CHECK:  }
-# CHECK:  .relasa {
-# CHECK-NEXT:    0x0 R_RISCV_ADD64 a 0x0
-# CHECK-NEXT:    0x0 R_RISCV_SUB64 z 0x0
-# CHECK:  }
+# CHECK:      Relocations [
+# CHECK-NEXT:   Section ({{.*}}) .rela.alloc_w {
+# CHECK-NEXT:     0x0 R_RISCV_ADD64 extern 0x0
+# CHECK-NEXT:     0x0 R_RISCV_SUB64 w 0x0
+# CHECK-NEXT:     0x8 R_RISCV_ADD64 w 0x0
+# CHECK-NEXT:     0x8 R_RISCV_SUB64 extern 0x0
+# CHECK-NEXT:   }
+# CHECK-NEXT:   Section ({{.*}}) .rela.alloc_x {
+# CHECK-NEXT:     0x0 R_RISCV_ADD64 y 0x0
+# CHECK-NEXT:     0x0 R_RISCV_SUB64 x 0x0
+# CHECK-NEXT:   }
+# CHECK-NEXT:   Section ({{.*}}) .rela.alloc_y {
+# CHECK-NEXT:     0x0 R_RISCV_ADD64 x 0x0
+# CHECK-NEXT:     0x0 R_RISCV_SUB64 y 0x0
+# CHECK-NEXT:   }
+# CHECK-NEXT:   Section ({{.*}}) .rela.nonalloc_y {
+# CHECK-NEXT:     0x0 R_RISCV_ADD64 nx 0x0
+# CHECK-NEXT:     0x0 R_RISCV_SUB64 ny 0x0
+# CHECK-NEXT:   }
 # CHECK-NEXT: ]
 
-	.section	sx,"aw", at progbits
-x:
-	.quad y-x
+.section .alloc_w,"aw", at progbits; w:
+.quad extern-w
+.quad w-extern
+.section .alloc_x,"aw", at progbits; x:
+.quad y-x
+.section .alloc_y,"aw", at progbits; y:
+.quad x-y
 
-	.section	sy,"aw", at progbits
-y:
-	.quad x-y
-
-	.section	sz
-z:
+.section .nonalloc_w; nw:
 .ifdef ERR
-	.quad z-a
-
-# CHECK-ERROR: Cannot represent a 
diff erence across sections
-# CHECK-ERROR: 	.quad z-a
-# CHECK-ERROR:        ^
-.else
-	.quad 0
+# ERROR: :[[#@LINE+1]]:7: error: unsupported relocation type
+.quad extern-nw
+# ERROR: :[[#@LINE+1]]:7: error: symbol 'extern' can not be undefined in a subtraction expression
+.quad nw-extern
 .endif
-
-	.section	sa
-a:
-	.quad a-z
+.section .nonalloc_x; nx:
+.ifdef ERR
+# ERROR: :[[#@LINE+1]]:7: error: unsupported relocation type
+.quad ny-nx
+.endif
+.section .nonalloc_y; ny:
+.quad nx-ny
 
 ## .apple_names/.apple_types are fixed-size and do not need fixups.
 ## llvm-dwarfdump --apple-names does not process R_RISCV_{ADD,SUB}32 in them.


        


More information about the llvm-commits mailing list