directive_fill.s 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. # RUN: llvm-mc -triple i386-unknown-unknown %s 2> %t.err | FileCheck %s
  2. # RUN: FileCheck --check-prefix=CHECK-WARNINGS %s < %t.err
  3. # CHECK: TEST0:
  4. # CHECK: .byte 10
  5. TEST0:
  6. .fill 1, 1, 10
  7. # CHECK: TEST1:
  8. # CHECK: .short 3
  9. # CHECK: .short 3
  10. TEST1:
  11. .fill 2, 2, 3
  12. # CHECK: TEST2:
  13. # CHECK: .long 4
  14. # CHECK: .long 0
  15. TEST2:
  16. .fill 1, 8, 4
  17. # CHECK: TEST3
  18. # CHECK: .byte 0
  19. # CHECK: .byte 0
  20. # CHECK: .byte 0
  21. # CHECK: .byte 0
  22. TEST3:
  23. .fill 4
  24. # CHECK: TEST4
  25. # CHECK: .short 0
  26. # CHECK: .short 0
  27. # CHECK: .short 0
  28. # CHECK: .short 0
  29. TEST4:
  30. .fill 4, 2
  31. # CHECK: TEST5
  32. # CHECK: .short 2
  33. # CHECK: .byte 0
  34. # CHECK: .short 2
  35. # CHECK: .byte 0
  36. # CHECK: .short 2
  37. # CHECK: .byte 0
  38. # CHECK: .short 2
  39. # CHECK: .byte 0
  40. TEST5:
  41. .fill 4, 3, 2
  42. # CHECK: TEST6
  43. # CHECK: .long 2
  44. # CHECK: .long 0
  45. # CHECK-WARNINGS: '.fill' directive with size greater than 8 has been truncated to 8
  46. TEST6:
  47. .fill 1, 9, 2
  48. # CHECK: TEST7
  49. # CHECK: .long 0
  50. # CHECK: .long 0
  51. # CHECK-WARNINGS: '.fill' directive pattern has been truncated to 32-bits
  52. TEST7:
  53. .fill 1, 8, 1<<32
  54. # CHECK-WARNINGS: '.fill' directive with negative repeat count has no effect
  55. TEST8:
  56. .fill -1, 8, 1
  57. # CHECK-WARNINGS: '.fill' directive with negative size has no effect
  58. TEST9:
  59. .fill 1, -1, 1
  60. # CHECK: TEST10
  61. # CHECK: .short 22136
  62. # CHECK: .byte 52
  63. TEST10:
  64. .fill 1, 3, 0x12345678