[PATCH] [mips] Reserve $at and use it for frame pointer elimination.

Vladimir Stefanovic vladimir.stefanovic at imgtec.com
Wed Dec 3 11:32:38 PST 2014


Minimal c code to reproduce the error, used to generate vector-multiply.ll
from the patch:

#include <stdint.h>
typedef int8_t VI8 __attribute__((vector_size(16)));

int main(int argc, char** argh) {
  VI8 v0 = (VI8) {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
  VI8 v1 = (VI8) {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
  int unused_variable[16384];
  VI8 result = v0*v1;
  return 0;
}

Built with:
clang -S -emit-llvm vector-multiply.c -o vector-multiply.ll -O0

http://reviews.llvm.org/D6509






More information about the llvm-commits mailing list