<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span>Hi,</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span>I'm new to LLVM and need some help. I defined an instruction to increment the stack pointer by 'amount' (i.e. sp = sp + amount). During assembly generation, the string that gets emitted is "ADS $SP"  rather than "ADS 10", for example, if I want to increment
 it by 10.</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span><br>
</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span>Can somebody show me what I'm doing wrong?</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span>Thanks.<br>
</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span><br>
</span></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span>def ADS: F_J<0b100001,(outs),(ins i32imm:$<span>amount</span>),"ADS $amount",[(set SP, (add SP, i32imm:$<span>amount</span>))] > {<br>
</span>
<div><br>
</div>
<div><span>        bits<10> amount;<br>
</span>
<div><br>
</div>
<span>        let Inst{9-0} = amount;</span><br>
</div>
<div>        let isReMaterializable = 1;<br>
</div>
<div>        let mayLoad = 0;<br>
</div>
<div>        let mayStore = 0;<br>
</div>
<div>        let Defs = [SP];<br>
</div>
<div>        let Uses = [SP];<br>
</div>
<span>}</span><br>
</div>
</body>
</html>