Add support for passing and returning vectors in accordance with the x86 calling convention.
- Add TargetLowering::lowerArguments() as a new stage in TargetLowering.
- Add support for passing arguments/return values in XMM registers in the x86 target.
BUG=none
R=jvoung@chromium.org, stichnot@chromium.org
Review URL: https://codereview.chromium.org/372113005
diff --git a/src/IceCfg.h b/src/IceCfg.h
index dbf08c6..856b145 100644
--- a/src/IceCfg.h
+++ b/src/IceCfg.h
@@ -69,6 +69,7 @@
// Manage arguments to the function.
void addArg(Variable *Arg);
const VarList &getArgs() const { return Args; }
+ VarList &getArgs() { return Args; }
// Miscellaneous accessors.
TargetLowering *getTarget() const { return Target.get(); }
@@ -86,6 +87,7 @@
void placePhiStores();
void deletePhis();
void doAddressOpt();
+ void doArgLowering();
void genCode();
void genFrame();
void livenessLightweight();