getelementptr_vec_idx2.ll 696 B

123456789101112131415161718192021222324
  1. ; RUN: not llvm-as < %s >/dev/null 2> %t
  2. ; RUN: FileCheck %s < %t
  3. ; Test that a vector pointer may be used with a scalar index.
  4. ; Test that a vector pointer and vector index should have the same vector width
  5. ; This code is correct
  6. define <2 x i32*> @test2(<2 x i32*> %a) {
  7. %w = getelementptr i32, <2 x i32*> %a, i32 2
  8. ret <2 x i32*> %w
  9. }
  10. ; This code is correct
  11. define <2 x i32*> @test3(i32* %a) {
  12. %w = getelementptr i32, i32* %a, <2 x i32> <i32 2, i32 2>
  13. ret <2 x i32*> %w
  14. }
  15. ; CHECK: getelementptr vector index has a wrong number of elements
  16. define <2 x i32> @test1(<2 x i32*> %a) {
  17. %w = getelementptr i32, <2 x i32*> %a, <4 x i32><i32 2, i32 2, i32 2, i32 2>
  18. ret <2 x i32> %w
  19. }