Open Quuxplusone opened 14 years ago
Bugzilla Link | PR8308 |
Status | NEW |
Importance | P normal |
Reported by | Brian West (bnwest@rice.edu) |
Reported on | 2010-10-05 17:48:15 -0700 |
Last modified on | 2010-10-06 09:29:10 -0700 |
Version | trunk |
Hardware | PC All |
CC | baldrick@free.fr, llvm-bugs@lists.llvm.org, nicholas@mxc.ca, nlewycky@google.com |
Fixed by commit(s) | |
Attachments | |
Blocks | |
Blocked by | |
See also |
I'm having trouble reproducing this, because the .ll file doesn't parse:
nlewycky@ducttape:~$ llvm/Debug+Asserts/bin/llvm-as < pr8308.ll
llvm/Debug+Asserts/bin/llvm-as: <stdin>:13:33: error: getelementptr index must be an integer
%5 = getelementptr float* %8, %8
^
The .ll printer is designed to handle invalid IR so that we can look at our
code as things are going wrong, but that doesn't mean the text it generates can
be parsed again. Do you know how I can produce the IR in memory which prints
like this but passes the verifier?
I am working a new optimization pass (-osr). I do not get a LLVM IR for either of the below:
% opt test.ssa.ll -S -o test.osr.ll -stats -osr -time-passes
or
% opt test.ssa.ll -S -o test.osr.ll -stats -osr -verify -time-passes
-time-passes shows the module verifier is run in both cases; thus, my confusion.
I do see the parse error if I run another opt pass or llc.
Brian