llvm-6502/lib
Chris Lattner 8399e02a2c Fix volatile load/store of pointers. Consider this testcase:
void %test(int** %P) {
  %A = volatile load int** %P
  ret void
}

void %test2(int*** %Q) {
  %P = load int*** %Q
  volatile store int** %P, int*** %Q
  ret void
}

instead of emitting:

void test(int **l1_P) {
  int *l2_A;

  l2_A = (int **((volatile int **)l1_P));
  return;
}
void test2(int ***l2_Q) {
  int **l1_P;

  l1_P = *l2_Q;
  *((volatile int ***)l2_Q) = l1_P;
  return;
}

... which is loading/storing volatile pointers, not through volatile pointers,
emit this (which is right):

void test(int **l1_P) {
  int *l3_A;

  l3_A = *((int * volatile*)l1_P);
  return;
}
void test2(int ***l2_Q) {
  int **l1_P;

  l1_P = *l2_Q;
  *((int ** volatile*)l2_Q) = l1_P;
  return;
}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20191 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 05:52:14 +00:00
..
Analysis Correct the recursive PHI node handling routines in a way that CANNOT induce 2005-02-13 04:37:18 +00:00
Archive Properly close mapped files. 2005-01-28 01:17:07 +00:00
AsmParser Fix test/Regression/Assembler/2005-01-31-CallingAggregateFunction.ll 2005-02-01 01:47:42 +00:00
Bytecode Make the check for global variables the same as the one for functions. In 2005-02-13 18:12:20 +00:00
CodeGen Print GEP offsets as signed values instead of unsigned values. On X86, this 2005-02-14 21:40:26 +00:00
Debugger Correct the comments and file header. 2004-12-23 21:16:46 +00:00
ExecutionEngine This is no longer needed. Global variables with undef initializers can be 2005-02-02 20:50:50 +00:00
Linker Minor cleanup. No need to explicitly tell the compiler the template arguments. 2005-02-13 17:50:16 +00:00
Support Work around GCC PR19958, which causes programs to sometimes crash after 2005-02-14 19:17:29 +00:00
System Fix a bug in my previous change to this, which broke the build on sparcs. 2005-02-14 21:42:10 +00:00
Target Fix volatile load/store of pointers. Consider this testcase: 2005-02-15 05:52:14 +00:00
Transforms Fix the second bug attached to PR504. 2005-02-14 20:11:45 +00:00
VMCore Nuke blank line. 2005-02-13 17:54:21 +00:00
Makefile Add the Linker library 2004-11-14 21:54:41 +00:00