Skip to content

Commit f8aafa6

Browse files
---
yaml --- r: 69102 b: refs/heads/auto c: b52eb4a h: refs/heads/master v: v3
1 parent 42128f2 commit f8aafa6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+2722
-790
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0
1414
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1515
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1616
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
17-
refs/heads/auto: 32586faa6adb890bc25caa8b5cb692e8c37e4a89
17+
refs/heads/auto: b52eb4a0ffbb5be156a0d71dc37f74c3f92e315e
1818
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1919
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c

branches/auto/configure

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -921,6 +921,9 @@ do
921921
esac
922922
need_ok "LLVM configure failed"
923923

924+
# Hack the tools Makefile to turn off the clang build
925+
sed -i 's/clang//g' tools/Makefile
926+
924927
cd $CFG_BUILD_DIR
925928
fi
926929

branches/auto/src/librustc/lib/llvm.rs

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1635,6 +1635,14 @@ pub mod llvm {
16351635
#[fast_ffi]
16361636
pub unsafe fn LLVMABIAlignmentOfType(TD: TargetDataRef,
16371637
Ty: TypeRef) -> c_uint;
1638+
1639+
/** Computes the byte offset of the indexed struct element for a target. */
1640+
#[fast_ffi]
1641+
pub unsafe fn LLVMOffsetOfElement(TD: TargetDataRef,
1642+
StructTy: TypeRef,
1643+
Element: c_uint)
1644+
-> c_ulonglong;
1645+
16381646
/**
16391647
* Returns the minimum alignment of a type when part of a call frame.
16401648
*/
@@ -2089,6 +2097,37 @@ pub mod llvm {
20892097
Val: ValueRef,
20902098
VarInfo: DIVariable,
20912099
InsertBefore: ValueRef) -> ValueRef;
2100+
2101+
#[fast_ffi]
2102+
pub unsafe fn LLVMDIBuilderCreateEnumerator(
2103+
Builder: DIBuilderRef,
2104+
Name: *c_char,
2105+
Val: c_ulonglong) -> ValueRef;
2106+
2107+
#[fast_ffi]
2108+
pub unsafe fn LLVMDIBuilderCreateEnumerationType(
2109+
Builder: DIBuilderRef,
2110+
Scope: ValueRef,
2111+
Name: *c_char,
2112+
File: ValueRef,
2113+
LineNumber: c_uint,
2114+
SizeInBits: c_ulonglong,
2115+
AlignInBits: c_ulonglong,
2116+
Elements: ValueRef,
2117+
ClassType: ValueRef) -> ValueRef;
2118+
2119+
#[fast_ffi]
2120+
pub unsafe fn LLVMDIBuilderCreateUnionType(
2121+
Builder: DIBuilderRef,
2122+
Scope: ValueRef,
2123+
Name: *c_char,
2124+
File: ValueRef,
2125+
LineNumber: c_uint,
2126+
SizeInBits: c_ulonglong,
2127+
AlignInBits: c_ulonglong,
2128+
Flags: c_uint ,
2129+
Elements: ValueRef,
2130+
RunTimeLang: c_uint) -> ValueRef;
20922131
}
20932132
}
20942133

branches/auto/src/librustc/metadata/csearch.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ pub fn maybe_get_item_ast(tcx: ty::ctxt, def: ast::def_id,
9090
}
9191

9292
pub fn get_enum_variants(tcx: ty::ctxt, def: ast::def_id)
93-
-> ~[ty::VariantInfo] {
93+
-> ~[@ty::VariantInfo] {
9494
let cstore = tcx.cstore;
9595
let cdata = cstore::get_crate_data(cstore, def.crate);
9696
return decoder::get_enum_variants(cstore.intr, cdata, def.node, tcx)

branches/auto/src/librustc/metadata/decoder.rs

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -733,11 +733,11 @@ pub fn maybe_get_item_ast(cdata: cmd, tcx: ty::ctxt,
733733
}
734734

735735
pub fn get_enum_variants(intr: @ident_interner, cdata: cmd, id: ast::node_id,
736-
tcx: ty::ctxt) -> ~[ty::VariantInfo] {
736+
tcx: ty::ctxt) -> ~[@ty::VariantInfo] {
737737
let data = cdata.data;
738738
let items = reader::get_doc(reader::Doc(data), tag_items);
739739
let item = find_item(id, items);
740-
let mut infos: ~[ty::VariantInfo] = ~[];
740+
let mut infos: ~[@ty::VariantInfo] = ~[];
741741
let variant_ids = enum_variant_ids(item, cdata);
742742
let mut disr_val = 0;
743743
for variant_ids.iter().advance |did| {
@@ -753,11 +753,16 @@ pub fn get_enum_variants(intr: @ident_interner, cdata: cmd, id: ast::node_id,
753753
Some(val) => { disr_val = val; }
754754
_ => { /* empty */ }
755755
}
756-
infos.push(@ty::VariantInfo_{args: arg_tys,
757-
ctor_ty: ctor_ty, name: name,
758-
// I'm not even sure if we encode visibility
759-
// for variants -- TEST -- tjc
760-
id: *did, disr_val: disr_val, vis: ast::inherited});
756+
infos.push(@ty::VariantInfo{
757+
args: arg_tys,
758+
arg_names: None,
759+
ctor_ty: ctor_ty,
760+
name: name,
761+
// I'm not even sure if we encode visibility
762+
// for variants -- TEST -- tjc
763+
id: *did,
764+
disr_val: disr_val,
765+
vis: ast::inherited});
761766
disr_val += 1;
762767
}
763768
return infos;

branches/auto/src/librustc/middle/trans/adt.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ pub enum Repr {
9494
}
9595

9696
/// For structs, and struct-like parts of anything fancier.
97-
struct Struct {
97+
pub struct Struct {
9898
size: u64,
9999
align: u64,
100100
packed: bool,

branches/auto/src/librustc/middle/trans/base.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -671,7 +671,7 @@ pub fn iter_structural_ty(cx: block, av: ValueRef, t: ty::t,
671671
let _icx = push_ctxt("iter_structural_ty");
672672

673673
fn iter_variant(cx: block, repr: &adt::Repr, av: ValueRef,
674-
variant: ty::VariantInfo,
674+
variant: @ty::VariantInfo,
675675
tps: &[ty::t], f: val_and_ty_fn) -> block {
676676
let _icx = push_ctxt("iter_variant");
677677
let tcx = cx.tcx();
@@ -1142,7 +1142,7 @@ pub fn trans_stmt(cx: block, s: &ast::stmt) -> block {
11421142
bcx = init_local(bcx, *local);
11431143
if cx.sess().opts.extra_debuginfo
11441144
&& fcx_has_nonzero_span(bcx.fcx) {
1145-
debuginfo::create_local_var(bcx, *local);
1145+
debuginfo::create_local_var_metadata(bcx, *local);
11461146
}
11471147
}
11481148
ast::decl_item(i) => trans_item(cx.fcx.ccx, i)
@@ -1774,7 +1774,7 @@ pub fn copy_args_to_allocas(fcx: fn_ctxt,
17741774
bcx = _match::store_arg(bcx, args[arg_n].pat, llarg);
17751775

17761776
if fcx.ccx.sess.opts.extra_debuginfo && fcx_has_nonzero_span(fcx) {
1777-
debuginfo::create_arg(bcx, &args[arg_n], args[arg_n].ty.span);
1777+
debuginfo::create_argument_metadata(bcx, &args[arg_n], args[arg_n].ty.span);
17781778
}
17791779
}
17801780

@@ -1948,7 +1948,7 @@ pub fn trans_fn(ccx: @mut CrateContext,
19481948
|fcx| {
19491949
if ccx.sess.opts.extra_debuginfo
19501950
&& fcx_has_nonzero_span(fcx) {
1951-
debuginfo::create_function(fcx);
1951+
debuginfo::create_function_metadata(fcx);
19521952
}
19531953
},
19541954
|_bcx| { });
@@ -2110,7 +2110,7 @@ pub fn trans_enum_variant_or_tuple_like_struct<A:IdAndTy>(
21102110
}
21112111

21122112
pub fn trans_enum_def(ccx: @mut CrateContext, enum_definition: &ast::enum_def,
2113-
id: ast::node_id, vi: @~[ty::VariantInfo],
2113+
id: ast::node_id, vi: @~[@ty::VariantInfo],
21142114
i: &mut uint) {
21152115
for enum_definition.variants.iter().advance |variant| {
21162116
let disr_val = vi[*i].disr_val;

0 commit comments

Comments
 (0)